Skip to content

Instantly share code, notes, and snippets.

@robotsorcerer
Last active May 4, 2017 16:02
Show Gist options
  • Save robotsorcerer/937713a7dd3ffb3ebfb7 to your computer and use it in GitHub Desktop.
Save robotsorcerer/937713a7dd3ffb3ebfb7 to your computer and use it in GitHub Desktop.
Implements Python and Matlab header files
cmake_minimum_required(VERSION 2.8.12)
project(xbox_tracker)
SET(CMAKE_BUILD_TYPE RelWithDebInfo)
find_package(PkgConfig)
find_package(PythonLibs REQUIRED)
find_package(Matlab REQUIRED)
find_package(OpenCV REQUIRED)
# IF(OpenCV_FOUND)
INCLUDE_DIRECTORIES(${OpenCV_INCLUDE_DIRS})
# ENDIF(OpenCV_FOUND)
#(${pkg-config opencv --cflags --libs})
OPTION(ENABLE_CXX11 "Enable C++11 support" ON)
IF(ENABLE_CXX11)
INCLUDE(CheckCXXCompilerFlag)
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
IF(COMPILER_SUPPORTS_CXX11)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
ELSEIF(COMPILER_SUPPORTS_CXX0X)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
ELSE()
MESSAGE(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
ENDIF()
ENDIF(ENABLE_CXX11)
if(CMAKE_VERSION VERSION_LESS "2.8.11")
#Add OpenCV headers location to your include paths
include_directories(${OpenCV_INCLUDE_DIRS})
endif()
# matlab
set(MATLAB_INCLUDE_DIR "/usr/local/MATLAB/R2015a/extern/include")
set(MATLAB_LIBRARY_DIR "/usr/local/MATLAB/R2015a/bin/glnxa64")
set(MATLAB_LIBRARIES
${MATLAB_LIBRARY_DIR}/libeng.so
${MATLAB_LIBRARY_DIR}/libmx.so
${MATLAB_LIBRARY_DIR}/libmex.so
)
SET(LIBRARIES
${OpenCV_LIBS}
${OpenCV_LIBRARIES}
${Matlab_LIBRARIES}
)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS}
AND ${MATLAB_INCLUDE_DIR}
AND ${OpenCV_INCLUDE_DIRS})
# Print some opencv messages
message(STATUS "\nOpenCV library status:")
message(STATUS " version: ${OpenCV_VERSION}")
message(STATUS " include path: ${OpenCV_INCLUDE_DIRS}")
message(STATUS " libraries: ${OpenCV_LIBS}")
message(STATUS "\n\nPython library status:")
message(STATUS " version: ${PYTHONLIBS_VERSION_STRING}")
message(STATUS " libraries: ${PYTHON_LIBRARIES}")
message(STATUS " include Dirs: ${PYTHON_INCLUDE_DIRS}")
message(STATUS "\n\nMatlab library status:")
message(STATUS " libraries: ${MATLAB_LIBRARIES}")
message(STATUS " include path: ${MATLAB_INCLUDE_DIR}\n")
LINK_DIRECTORIES(${OpenCV_LIBRARY_DIRS}}
AND ${MATLAB_LIBRARIES}
AND ${PYTHON_LIBRARIES})
#Declare the executable target built from your sources
add_executable(xbox_tracker xbox_tracker.cpp)
# Link your application with OpenCV libraries
target_link_libraries(xbox_tracker ${OpenCV_LIBS})
target_link_libraries(xbox_tracker ${OpenCV_LIBRARIES})
target_link_libraries(xbox_tracker ${MATLAB_LIBRARIES})
target_link_libraries(xbox_tracker ${PYTHON_LIBRARIES})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment