如何在clion中引⼊第三⽅库?
cmake的所有配置都写在⼀个叫的⽂件当中,所有的配置都写在该⽂件中。
A : 声明路径变量
#声明头⽂件的路径
set(INC_DIR ./include)
#声明链接库的路径
set(LINK_DIR ./lib)
注:这⾥采⽤的是相对路径的⽅式来引⽤头⽂件和库⽂件,这样⼯程位置发⽣改变时,可以不⽤修改配置⽂件,其中./ 表⽰当前路径。
B : 引⼊头⽂件和库⽂件
#引⼊头⽂件
include_directories(${INC_DIR})
#引⼊库⽂件
link_directories(${LINK_DIR})
注:在CMake中,${}的语法含义是获取变量的值,这和shell中获取变量值的⽅式很相似。在项⽬中引⼊了头⽂件和库⽂件,这样在编译的时候才知道到哪⾥去寻相应的头⽂件和库⽂件。
C:设置编译⽂件
#添加编译⽂件
add_executable(TestRedis cluster.cpp)
注:TestRedis为我在CMake中设置的项⽬名称,cluster.cpp为我要编译的⽂件。
D : 引⼊第三⽅库
#将第三⽅库链接在⼀起
target_link_libraries(TestRedis lib_acl_cpp.a lib_acl.a lib_protocol.a pthread)
注:此时将需要链接的第三⽅库链接在⼀起即可。
完整的CMake配置⽂件
#设置cmake版本
cmake_minimum_required(VERSION 3.15)
#项⽬名称
project(TestRedis)
#设置编译版本
set(CMAKE_CXX_STANDARD 14)
#设置头⽂件路径
set(INC_DIR ./include)
#设置链接库路径
set(LINK_DIR ./lib)
#引⼊头⽂件
include_directories(${INC_DIR})
#引⼊库⽂件
include_directories(${LINK_DIR})
#编译⽂件
add_executable(TestRedis cluster.cpp)
#将第三⽅库链接在⼀起
target_link_libraries(TestRedis lib_acl_cpp.a lib_acl.a lib_protocol.a pthread)
注:CMake配置⽂件中的⼀些语句可以适当调整顺序,但add_executable语句必须要在target_link_libraries语句的前⾯。拓展:
基本的操作命令如下所⽰:(cmake有很多命令,这⾥我们只对⼀些常⽤的命令进⾏介绍。)
(7)add_subdirectory命令
命令语法:add_subdirectory(source_dir [binary_dir] [EXCLUDE_FROM_ALL] )
命令简述:⽤于添加⼀个需要进⾏构建的⼦⽬录
使⽤范例:add_subdirectory(Lib)
(15)add_definitions命令
cmake如何使用命令语法:add_definitions(-DFOO -DBAR)
命令简述:⽤于添加编译器命令⾏标志(选项),通常情况下我们使⽤其来添加预处理器定义
使⽤范例:add_definitions(-D_UNICODE -DUNICODE)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论