Clion CMake工具 中如何引入第三方庫

2022-05-06 21:15:09 字數 1695 閱讀 3193

因為自己最近在學redis,想要在c++中獲取到redis記憶體資料庫中的資料,需要使用redis客戶端來連線redis傳輸命令並接收資料,在redis官方**上推薦的客戶端中選擇了acl-redis。而clion是一款非常優秀的c++整合開發環境,clion選擇了cmake作為構建工具,所以需要在cmake配置檔案中進行配置。

cmake的所有配置都寫在乙個叫cmakelists.txt的檔案當中,所有的配置都寫在該檔案當中。

這是我的工程目錄結構,include資料夾為acl-redis的所有標頭檔案,lib資料夾為acl-redis的靜態庫,在下面的介紹過程中會以此為例子來講解如何引入lib資料夾下的靜態庫。

#宣告標頭檔案路徑

set(inc_dir ./include)

#宣告鏈結庫路徑

set(link_dir ./lib)

這裡採用的是相對路徑的方式來引用標頭檔案和庫檔案,這樣工程位置發生改變的時候,可以不用修改配置檔案,其中./表示當前路徑。

#引入標頭檔案

include_directories($)

#引入庫檔案

link_directories($)

在cmake中,${}的語法含義是獲取變數的值,這和shell中獲取變數值的方式很相似。在專案中引入了標頭檔案和庫檔案,這樣在編譯的時候才知道到**去尋找相應的標頭檔案和庫檔案。

#新增編譯檔案

add_executable(testredis cluster.cpp)

testredis為我在cmake中設定的專案名稱(後面會將完整的cmake檔案展示出來),cluster.cpp為我要編譯的檔案。

#將第三方庫鏈結在一起

target_link_libraries(testredis lib_acl_cpp.a lib_acl.a lib_protocol.a pthread)

此時將需要鏈結的第三方庫鏈結在一起即可。

#設定cmake版本

cmake_minimum_required(version 3.15)

#專案名字

project(testredis)

#設定編譯版本

set(cmake_cxx_standard 14)

#設定標頭檔案路徑

set(inc_dir ./include)

#設定鏈結庫路徑

set(link_dir ./lib)

#引入標頭檔案

include_directories($)

#引入庫檔案

link_directories($)

#編譯檔案

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語句的前面。

如何選擇OLAP工具?

在資料倉儲工程中如何選擇合適的工具,使工程技術人員和經營管理人員經常面臨的難題,在選擇olap工具時,一般應從產品的功能 適用性 效能 可伸縮型和未來的發展趨勢5個方面綜合考慮。從總體來說,這5個方面的重要性難分伯仲,但是應該注意以下幾點 雖然功能是最引人注目和最顯而易見的方面,但是由於產品和技術發...

如何選擇房貸工具?

購買房產,無論是出於自住需要還是增值的目的,大部分人都不免要跟銀行打交道 或是利用銀行貸款緩解自身資金壓力,或是僅僅作為融資的途徑,利用槓桿原理提高投資收益。2007年1月1日,個人住房按揭貸款開始執行新的貸款利率,五年以上商業貸款的基準利率為6.84 個人住房公積金貸款利率為4.59 利率的上公升...

如何使用Goolge Timeline工具

網上中文的資料版本比較老,找到乙個新版本的英文介紹,翻一下,原文 4部分組成 1.控制面板 包含開始記錄,結束記錄,配置我要捕獲什麼內容組成 2.概述面板 頁面效能的高度總結,詳見下文。3.火焰圖面板 cpu棧的視覺化描述 4.細節面板 當乙個事件被選中,這個面板會顯示有關這個事件的更多資訊。如果沒...