set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-std=c++11 -pthread") elseif(CMAKE_SYSTEM_NAME MATCHES "Windows") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fexec-charset=GBK") endif() #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -fexec-charset=GBK") #include_directories(....
4. set() set()应用广泛。下面是几种常见的用途: # 指定include文件目录列表 set (INC_DIRS ../include .) # 指定源文件列表: set (SRCS a.cpp b.cpp) # 指定链接库列表 set (LIBS arithm rt) # 定义头文件目录,方便其他模块使用 set (ARITHM_INCLUDE_DIR {CMAKE_SOURCE_DIR}/common/arithm/include...
_INCLUDE_DIRS find_package查找到的包的头文件目录 _LIBRARIES find_package查找到的包的库文件 ___ 编译配置相关变量 变量名含义 CMAKE_BUILD_TYPE 编译选项,Release或者Debug,如set(CMAKE_BUILD_TYPE "Release") CMAKE_CXX_FLAGS 编译标志,设置C++11编译,set(CMAKE_CXX_FLAGS "\${CMAKE_CXX_FLAGS} -st...
对于早期CMake的配置文件,则非常简单粗暴,将所有的信息通过Abc_FOUND、Abc_INCLUDE_DIRS、Abc_LIBRARIES等变量返回。(语法很不统一,需要查看配置文件自己的注释) 库的开发 这个环节我们从库的使用者切换为库的开发者,假设我们开发了一个库Abc,那么如何处理Abc库的安装和导入?在导入环节,如何按照modern cmake的规范提...
使用方法是要在 bash 中用 export 或者在 csh 中使用 set 命令设置或者CMAKE_INCLUDE_PATH=/home/include cmake ..等方式。如果头文件没有存放在常规路径(/usr/include, /usr/local/include等), 则可以通过这些变量就行弥补。 为了将程序更智能一点,我们可以使用CMAKE_INCLUDE_PATH来进行,使用 bash 的方法 如...
设置INTERFACE_INCLUDE_DIRECTORIES后, 在basiccache中都不需要find_package了 set( leveldb_INCLUDE_DIR"${CMAKE_CURRENT_SOURCE_DIR}/include")set( leveldb_INCLUDE_DIRS"${CMAKE_CURRENT_SOURCE_DIR}/include")ADD_LIBRARY(leveldb STATIC IMPORTED GLOBAL)set_property(TARGET leveldb PROPERTYINTERFACE_INCLUDE_DI...
Module模式:搜索CMAKE_MODULE_PATH指定路径下的FindXXX.cmake文件,执行该文件从而找到XXX库。其中,具体查找库并给XXX_INCLUDE_DIRS和XXX_LIBRARIES两个变量赋值的操作由FindXXX.cmake模块完成。 Config模式:搜索XXX_DIR指定路径下的XXXConfig.cmake文件,执行该文件从而找到XXX库。其中具体查找库并给XXX_INCLUDE_DIRS和...
This module sets the following result variables:``JNI_INCLUDE_DIRS``the include dirs touse``JNI_LIBRARIES``the libraries touse(JAWTandJVM)``JNI_FOUND``TRUEifJNI headersandlibraries were found. Cache Variables ^^^ The following cache variables are also available to setoruse:``JAVA_AWT_LIBRARY...
${EIGEN3_INCLUDE_DIR}${Pangolin_INCLUDE_DIRS})set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/lib)add_library(${PROJECT_NAME}SHARED src/System.cc src/Tracking.cc src/LocalMapping.cc src/LoopClosing.cc src/ORBextractor.cc src/ORBmatcher.cc ...
message(STATUS " include path: ${OpenCV_INCLUDE_DIRS}") 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 上述代码会找到opencv300,OpenCV_DIR变量的值有效OpenCV_ROOT变量无效。 (2)cmake特定的缓存变量 ...