From 32bf572d00c19f301c5ecb0c96524fbb5478d4b0 Mon Sep 17 00:00:00 2001 From: mmcwilliams Date: Sat, 30 Mar 2024 22:20:33 -0400 Subject: [PATCH] Make project compile on macOS as well as Linux --- CMakeLists.txt | 11 ++++++++++- main.cpp | 10 ++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 79f9e97..220e699 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,6 +6,8 @@ set(CMAKE_CXX_STANDARD 17) set(CMAKE_VERBOSE_MAKEFILE ON) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake-modules) +find_package(OpenGL REQUIRED) +find_package(GLUT REQUIRED) find_package(OpenCV HINTS /usr/local/opt/opencv /usr/local/Cellar/opencv REQUIRED) set( NAME_SRC @@ -15,4 +17,11 @@ set( NAME_SRC set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) add_executable( opengl_opencv_example ${NAME_SRC} ${NAME_HEADERS} ) -target_link_libraries(opengl_opencv_example GL GLU glut ${OpenCV_LIBS} ) \ No newline at end of file + + +if (APPLE) + # Equivalent to pass flags -framework OpenGL + target_link_libraries(opengl_opencv_example OpenGL::GL GLUT::GLUT ${OpenCV_LIBS}) +else() + target_link_libraries(opengl_opencv_example GL GLU glut ${OpenCV_LIBS} ) +endif() \ No newline at end of file diff --git a/main.cpp b/main.cpp index 50ede5c..1be44d1 100644 --- a/main.cpp +++ b/main.cpp @@ -6,8 +6,14 @@ #include -#include -#include +#ifdef __APPLE__ + #include + #include + #include +#else + #include + #include +#endif using namespace cv; using namespace std;