target_link_libraries的作用是将目标与指定的库进行链接,以使得目标程序能够使用这些库中的函数和符号。 在使用target_link_libraries函数时,可以指定相对或绝对路径来引用库文件。如果库文件是系统级的库,cmake会自动并链接;如果是自定义的库,需要显式指定路径。 以下是target_link_libraries函数的几种常见用法: 1....
target_link_libraries(main subtraction) target_link_directories(main PRIVATE /private/dir INTERFACE /interface/dir) get_target_property(result main LINK_DIRECTORIES) message("result: ${result}") # result: /private/dir get_target_property(result main INTERFACE_LINK_DIRECTORIES) message("result: ${r...
#target_link_libraries(useHello"/home/ubuntu/ch2/useHello/libhello_shared.so") #link_libraries(useHello"/home/ubuntu/ch2/useHello/libhello_shared.so")#bug #link_libraries(useHello /home/ubuntu/ch2/useHello/libhello_shared.so)#bug#undefinedreferenceto `printHello() 路径错误 target_link_librar...
对象库可以用作 target_link_libraries 的 (第一个)参数,以指定其源对其他库的依赖关系。例如,以下代码: add_library(A SHARED a.c)target_compile_definitions(A PUBLIC A)add_library(obj OBJECT obj.c)target_compile_definitions(obj PUBLIC OBJ)target_link_libraries(obj PUBLIC A) 使用-DA -DOBJ 编译 ...
TARGET_LINK_LIBRARIES(a.out /usr/lib/libeg.so) 动态库的添加: link_directories(${PROJECT_SOURCE_DIR}/lib) #添加动态连接库的路径target_link_libraries(project_name -lmxnet ) #添加libmxnet.so静态库的添加: add_library(mxnet STATIC IMPORTED)set_property(TARGET mxnet PROPERTY IMPORTED_LOCATION /...
cmake可以使用 LINK_DIRECTORIES 命令来指定第三方库所在路径,比如,你的动态库在/home/myproject/libs这个路径下,则通过命令:LINK_DIRECTORIES(/home/myproject/libs),把该路径添加到第三方库搜索路径中,这样就可以使用相对路径了,使用TARGET_LINK_LIBRARIES的时候,只需要给出动态链接库的名字就行了。 拓展: 1、C...
target_link_libraries(show_order ${catkin_LIBRARIES} ) 因为我这里用到了科大讯飞的一个链接库 libmsc.so,放到了我package目录下的libs/X64文件夹下,出于移植的考虑,不想使用绝对路径。所以这里使用link_directories添加相对路径的目录,然后在target_link_libraries中添加库目录名字。
find_package:命令用于查找系统上已安装的库或者在特定路径下查找库。该命令可以在Cmake配置期间查找库,提供一些 关于这些库的信息,例如头文件路径,库文件路径以及版本信息,通过find_package可以告诉cmake项目需要哪些外部库,并让cmake去找到位置 target_link_libraries :一旦使用了find_package/手动添加路径,需要告诉c...
TARGET_LINK_LIBRARIES(myProject #这些库名写法都可以。 TARGET_LINK_LIBRARIES(myProject TARGET_LINK_LIBRARIES(myProject -leng) CMakeLists文件链接方式有如下2种: cmake_minimum_required(VERSION2.8FATAL_ERROR)include_directories(``"/opt/MATLAB/R2012a/extern/include"``)LINK_DIRECTORIES(``"/opt/MATLAB/...