cmake添加动态链接库

如果使用gcc进行单个c文件编译的时候,有时候后面会需要添加如-L -l之类的参数,如下

gcc -o test test.c -L/usr/local/lib/ -lopencv

这里-L是制定动态库的位置,-l则是指定打算连接的动态库名字。

那么在进行项目编译的时候就需要通过cmake来通过Cmakelist.txt引导make进行项目编译。

那么就需要在cmakelists.txt文件内添加动态链接库的配置,具体参数如下

1、首先申明动态库的位置

LINK_DIRECTORIES({your_library_path})

例:

LINK_DIRECTORIES(/usr/local/lib)

2、然后制定具体的动态库的名称

target_link_libraries(${PROJECT_NAME} -l{library_name})

例:指定hiredis的动态链接文件 libhiredis.dylib

target_link_libraries(${PROJECT_NAME} -lhiredis)

 

最终的cmakelists.txt:

 
cmake_minimum_required(VERSION 3.2)
PROJECT(edgepoint)
INCLUDE_DIRECTORIES(
include
hiredis-master
)
AUX_SOURCE_DIRECTORY(src DIR_SRCS)
add_subdirectory(hiredis-master)
SET(EDGEPOINT
${DIR_SRCS}
)
LINK_DIRECTORIES(/usr/local/lib/)
ADD_EXECUTABLE(${PROJECT_NAME} ${EDGEPOINT})
target_link_libraries(${PROJECT_NAME} -lhiredis)
TARGET_LINK_LIBRARIES(${PROJECT_NAME} m)
 
 
 

你可能感兴趣的:(cmake添加动态链接库)