这里我们首先从上图第8行开始关于设置CEF_ROOT和CMAKE_MODULE_PATH的分析:配置首先定义了CEF_ROOT,它使用了CMake提供的变量CMAKE_CURRENT_SOURCE_DIR,也就是当前CMakeLists.txt所在目录:cef_binary_xxx目录;然后对CMAKE_MODULE_PATH追加了${CEF_ROOT}/cmake这个目录。 之所以这样做,是因为接下来find_package(CEF...
首先,我们并没有把cef_bin_xxx目录复制到项目根目录下,而是放在了“外部”,并通过环境变量CEF_ROOT指向了它。在上述CMake关于CEF配置部分,我们对CMAKE_MODULE_PATH路径值追加了cef_app_macos_project/cmake目录。 ${CMAKE_CURRENT_SOURCE_DIR}就指代了项目根目录cef_app_macos_project。 接下来,在find_package(...
(1)CMAKE_MODULE_PATH指定的路径(注意不是 CMAKE_PREFIX_PATH) (2) cmake安装目录的 Modules 路径中(比如 /usr/local/Cellar/cmake/3.25.1/share/cmake/Modules),寻找 FindXXX.cmake 文件,所以使用这种方式经常需要追加 CMAKE_MODULE_PATH 变量的内容。 FindXXX.cmake 是一个脚本文件,使用 cmake 内置命...
这里我们首先从上图第8行开始关于设置CEF_ROOT和CMAKE_MODULE_PATH的分析:配置首先定义了CEF_ROOT,它使用了CMake提供的变量CMAKE_CURRENT_SOURCE_DIR,也就是当前CMakeLists.txt所在目录:cef_binary_xxx目录;然后对CMAKE_MODULE_PATH追加了${CEF_ROOT}/cmake这个目录。 之所以这样做,是因为接下来find_package(CEF...
关于CMake本身的基础配置定义我们不再赘述,这里主要解释一下关于CEF引入的部分。首先,我们并没有把cef_bin_xxx目录复制到项目根目录下,而是放在了“外部”,并通过环境变量CEF_ROOT指向了它。在上述CMake关于CEF配置部分,我们对CMAKE_MODULE_PATH路径值追加了cef_app_macos_project/cmake目录。
1.CMAKE_MODULE_PATH 用分号分隔的目录列表,用于在检查CMake附带的默认模块之前,由include或find_package命令加载的CMake模块的搜索路径。默认情况下,它为空。 2.include include指令一般用于语句的复用,也就是说,如果有一些语句需要在很多CMakeLists.txt文件中使用,为避免重复编写,可以将其写在.cmake文件中,然后在...
set是定义一个变量,而list是定义一个array,这里为CMAKE_MODULE_PATH变量追加${PROJECT_SOURCE_DIR}/cmake_modules目录。将APPEND换成REMOVE则是删除。 ROS特有: catkin_package(CATKIN_DEPENDS roscpp): 依赖于此功能包的 功能包 所需要添加的依赖。简单说,find_package是给自己设置所需的依赖,而catkin_make是在...
CMAKE_MODULE_PATH:定义自己的 cmake 模块所在的路径,SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake),然后可以用INCLUDE命令来调用自己的模块 EXECUTABLE_OUTPUT_PATH:重新定义目标二进制可执行文件的存放位置 LIBRARY_OUTPUT_PATH:重新定义目标链接库文件的存放位置 ...
CMAKE_MODULE_PATH 这个变量用来定义自己的 cmake 模块所在的路径 你需要通过 SET 指令,将自己的 cmake 模块路径设 置一下,比如 SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) EXECUTABLE_OUTPUT_PATH 和 LIBRARY_OUTPUT_PATH - 分别用来重新定义最终结果的存放目录,前面我们已经提到了这两个变量 ...
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) # 设置include的搜索路径 1. 2. 3. 12. 重命名 此处的TARGET为生成的名字,以name为例 set(TARGET name) 1. 12.1. 添加后缀 生成类似这样的动态库libname_message.so set(CMAKE_RELEASE_POSTFIX "_message") #这条命令需要放在add_library之前...