最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Clion(CMake工具)中引入第三方庫(kù)的詳細(xì)方法

 更新時(shí)間:2021年02月24日 10:38:49   作者:碳的還原性  
這篇文章主要介紹了Clion(CMake工具)中引入第三方庫(kù)的詳細(xì)方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

前言

因?yàn)樽约鹤罱趯W(xué)Redis,想要在C++中獲取到Redis內(nèi)存數(shù)據(jù)庫(kù)中的數(shù)據(jù),需要使用Redis客戶(hù)端來(lái)連接Redis傳輸命令并接收數(shù)據(jù),在Redis官方網(wǎng)站上推薦的客戶(hù)端中選擇了acl-redis。而Clion是一款非常優(yōu)秀的C++集成開(kāi)發(fā)環(huán)境,Clion選擇了CMake作為構(gòu)建工具,所以需要在CMake配置文件中進(jìn)行配置。

如何配置

CMake的所有配置都寫(xiě)在一個(gè)叫CMakeLists.txt的文件當(dāng)中,所有的配置都寫(xiě)在該文件當(dāng)中。

這是我的工程目錄結(jié)構(gòu),Include文件夾為acl-redis的所有頭文件,lib文件夾為acl-redis的靜態(tài)庫(kù),在下面的介紹過(guò)程中會(huì)以此為例子來(lái)講解如何引入lib文件夾下的靜態(tài)庫(kù)。

聲明路徑變量

#聲明頭文件路徑
set(INC_DIR ./include)

#聲明鏈接庫(kù)路徑
set(LINK_DIR ./lib)

這里采用的是相對(duì)路徑的方式來(lái)引用頭文件和庫(kù)文件,這樣工程位置發(fā)生改變的時(shí)候,可以不用修改配置文件,其中./表示當(dāng)前路徑。

引入頭文件和庫(kù)文件

#引入頭文件
include_directories(${INC_DIR})

#引入庫(kù)文件
link_directories(${LINK_DIR})

在CMake中,${}的語(yǔ)法含義是獲取變量的值,這和shell中獲取變量值的方式很相似。在項(xiàng)目中引入了頭文件和庫(kù)文件,這樣在編譯的時(shí)候才知道到哪里去尋找相應(yīng)的頭文件和庫(kù)文件。

設(shè)置編譯文件

#添加編譯文件
add_executable(TestRedis cluster.cpp)

TestRedis為我在CMake中設(shè)置的項(xiàng)目名稱(chēng)(后面會(huì)將完整的CMake文件展示出來(lái)),cluster.cpp為我要編譯的文件。

引入第三方庫(kù)

#將第三方庫(kù)鏈接在一起
target_link_libraries(TestRedis lib_acl_cpp.a lib_acl.a lib_protocol.a pthread)

此時(shí)將需要鏈接的第三方庫(kù)鏈接在一起即可。

完整的CMake配置文件

#設(shè)置cmake版本
cmake_minimum_required(VERSION 3.15)

#項(xiàng)目名字
project(TestRedis)

#設(shè)置編譯版本
set(CMAKE_CXX_STANDARD 14)

#設(shè)置頭文件路徑
set(INC_DIR ./include)

#設(shè)置鏈接庫(kù)路徑
set(LINK_DIR ./lib)

#引入頭文件
include_directories(${INC_DIR})

#引入庫(kù)文件
link_directories(${LINK_DIR})

#編譯文件
add_executable(TestRedis cluster.cpp)

#將第三方庫(kù)連接在一起
target_link_libraries(TestRedis lib_acl_cpp.a lib_acl.a lib_protocol.a pthread)

注意事項(xiàng)

C++中第三方庫(kù)的文件命名是有對(duì)應(yīng)命名規(guī)則的,靜態(tài)庫(kù)的名稱(chēng)一般是libxxx.a,動(dòng)態(tài)庫(kù)的一般名稱(chēng)是libxxx.so,在我引入第三方庫(kù)的時(shí)候,如果將庫(kù)名稱(chēng)lib_acl_cpp.a重命名為acl_app.a再引用的話,將出現(xiàn)找不到庫(kù)文件的錯(cuò)誤,這一點(diǎn)沒(méi)有找到原因。

CMake配置文件中的一些語(yǔ)句可以適當(dāng)調(diào)整順序,但add_executable語(yǔ)句必須要在target_link_libraries語(yǔ)句的前面。

到此這篇關(guān)于Clion(CMake工具)中引入第三方庫(kù)的詳細(xì)方法的文章就介紹到這了,更多相關(guān)Clion引入第三方庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

汝南县| 怀来县| 石景山区| 渭源县| 简阳市| 奎屯市| 乌兰浩特市| 皋兰县| 察隅县| 宁明县| 红安县| 济阳县| 女性| 夏河县| 东平县| 涞水县| 绥化市| 金川县| 卢龙县| 南靖县| 赫章县| 甘泉县| 汪清县| 连平县| 麻栗坡县| 漠河县| 大竹县| 昌吉市| 天镇县| 岚皋县| 澜沧| 林甸县| 五台县| 通江县| 平舆县| 绍兴市| 公主岭市| 安徽省| 襄城县| 常州市| 屏东市|