cmake之(1)link_directoris link_libraries target_link_libraries

心已赠人 2022-11-25 05:25 232阅读 0赞

(1)find_library

#在指定目录下搜索一个库, 保存在变量MY_LIB中

find_library(MY_LIB libmylib.a ./)

(2) LINK_DIRECTORIES(添加需要链接的库文件目录)

语法:

  1. link_directories(directory1 directory2 ...)

它相当于g++命令的-L选项的作用,也相当于环境变量中增加LD_LIBRARY_PATH的路径的作用。

比如:

  1. LINK_DIRECTORIES("/opt/MATLAB/R2012a/bin/glnxa64")

(3)LINK_LIBRARIES (添加需要链接的库文件路径,注意这里是全路径)

比如:

  1. LINK_LIBRARIES("/opt/MATLAB/R2012a/bin/glnxa64/libeng.so")
  2. LINK_LIBRARIES("/opt/MATLAB/R2012a/bin/glnxa64/libmx.so")

也可以写成:

  1. LINK_LIBRARIES("/opt/MATLAB/R2012a/bin/glnxa64/libeng.so" "/opt/MATLAB/R2012a/bin/glnxa64/libmx.so")

(4)TARGET_LINK_LIBRARIES (设置要链接的库文件的名称)

比如下面的写法都可以:

  1. TARGET_LINK_LIBRARIES(myProject hello) #连接libhello.so库
  2. TARGET_LINK_LIBRARIES(myProject libhello.a)
  3. TARGET_LINK_LIBRARIES(myProject libhello.so)

注意:查找加载库文件find_library link_directories link_libraries 都需要放在add_library 或者 add_executable语句的前面

target_link_libraries语句放在add_library 或者 add_executable语句的后面

发表评论

表情:
评论列表 (有 0 条评论,232人围观)

还没有评论,来说两句吧...

相关阅读

    相关 C++构建cmake

    一般来说。GNU 开源软件的 Build 系统,软件的安装过程都是: 解压源代码包 ./configure make make install 这个