ADD_LIBRARY(hello SHARED ${LIBHELLO_SRC}) ADD_LIBRARY(hello STATIC ${LIBHELLO_SRC}) 但是如果使用这种方式,只会构建一个动态库,不会构建出静态库,虽然静态库的后缀是.a,此时我们可以修改静态库的名字,这样是可以同时构建动态库和静态库: ADD_LIBRARY(hello SHARED ${LIBHELLO_SRC}) ADD_LIBRARY(hello_st...
如果要指定libhello.so 生成的位置,可以通过在主工程文件CMakeLists.txt 中修改 ADD_SUBDIRECTORY(lib)指令来指定一个编译输出位置或者在lib/CMakeLists.txt 中添加 SET(LIBRARY_OUTPUT_PATH <路径>)来指定一个新的位置。 四、ADD_LIBRARY指令 语法: ADD_LIBRARY(libname [SHARED|STATIC|MODULE] [EXCLUDE_FROM_AL...
1 . CMake 引入静态库 : 使用 add_library() 导入静态库 , set_target_properties() 设置静态库路径 ; # 引入静态库 # ① 参数 1 ( add ) : 设置引入的静态库名称 # ② 参数 2 ( SHARED ) : 设置引入的函数库类型 : ① 静态库 STATIC ② 动态库 SHARED # ③ 参数 3 ( IMPORTED ) :...
add_custom_target添加一个构建目标。 add_definitions添加宏定义。 add_dependencies添加target的依赖。 add_executable添加构建二进制执行。 add_library添加构建lib库。 add_subdirectory添加构建的二级目录,一般在top的CMakeLists.txt中使用,用于将其他CMakeLists.txt包含进build工程,使用相对目录。 add_testaux_source_...
Add a comment 13 You had better use find_library command instead of link_directories. Concretely speaking there are two ways: designate the path within the command find_library(NAMES gtest PATHS path1 path2 ... pathN) set the variable CMAKE_LIBRARY_PATH set(CMAKE_LIBRARY_PATH path1 pat...
它相当于 g++ 命令的 -L 选项的作用,也相当于环境变量中增加 LD_LIBRARY_PATH 的路径的作用 link_directories("/home/server/third/lib") 3. 宏定义 CMakeLists.txt 之 多重判断宏定义 比如设置为 CPU_ONLY add_definitions(-DCPU_ONLY) 它相当于 g++ 命令的 -D 选项的作用(-DCPU_ONLY),用于宏定义。
ADD_SUBDIRECTORY(src) 2.建立src 目录(/home/guo/cmake_practice/4/src),编写源文件 main.cpp和CMakeLists.txt。 src/main.cpp内容如下: #include <hello.h>intmain() { HelloFunc();return0; } src/CMakeLists.txt内容如下: CMAKE_MINIMUM_REQUIRED( VERSION2.8) # 声明要求的 cmake 最低版本 ...
add_library(<库名> <库路径>) 如何使用add_library()函数 要使用add_library()函数,我们需要在CMakeLists.txt文件中找到对应的代码行。然后,将所需的库名和库路径作为参数传入add_library()函数中即可。 #include <CMakeLists.txt> add_library(libexample "path/to/libexample") add_library()函数的示例...
add_executable(demo main.cpp ) 7.最后贴一个完整的例子 cmake_minimum_required (VERSION 2.6) INCLUDE_DIRECTORIES(../../thirdparty/comm) FIND_LIBRARY(COMM_LIB comm ../../thirdparty/comm/lib NO_DEFAULT_PATH) FIND_LIBRARY(RUNTIME_LIB rt /usr/lib /usr/local/lib NO_DEFAULT_PATH) ...
1 . CMake 引入静态库 : 使用add_library() 导入静态库 , set_target_properties() 设置静态库路径 ; 代码语言:javascript 复制 # 引入静态库 # ① 参数 1 ( add ) : 设置引入的静态库名称 # ② 参数 2 ( SHARED ) : 设置引入的函数库类型 :① 静态库 STATIC② 动态库 SHARED # ③ 参数 3 ( ...