linux下使用cmake構建C/C++項目

cmake下載安裝:

下載地址: http://www.cmake.org/cmake/resources/software.html

wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

tar zxvf cmake-2.8.10.2.tar.gz

cd cmake-2.8.10.2

./configure

gmake (不知道是不是必須的,提示要這么干)

make

make install

*文檔里說?./bootstrap; make; make install 這樣安裝,沒試過

使用方法,直接來兩個簡單的例子吧

//需要的cmake 最低版本號,我們用的是2.8.10.2了
cmake_minimum_required (VERSION 2.8)
//構建的項目名稱了 project ( main ) //要用到的文件路經 include_directories(
"../")SET (HEADER_FILES../threadpool.h )SET (SOURCE_FILES ../threadpool.cpp../main.cpp )//生成可執行文件main ADD_EXECUTABLE( main${HEADER_FILES} ${SOURCE_FILES} )

//用到的各種庫 TARGET_LINK_LIBRARIES(main pthread)

?

cmake_minimum_required (VERSION 2.8)
project ( logicServer )include_directories("../")
include_directories("../Common/Net/")
SET (LIBRARY_OUTPUT_PATH ../../lib)SET (HEADER_FILES../netHandle.h)SET (SOURCE_FILES  ../logicMain.cpp../netHandle.cpp
)
//生成一個可執行文件logicServer add_executable(logicServer${HEADER_FILES} ${SOURCE_FILES} )
//用到的動態庫,靜態庫等各種庫就寫這里
TARGET_LINK_LIBRARIES( logicServer pthread /opt/gameSever1.0/Common/lib/libnetwork.so)

?

如果不需要生成可執行文件,而是動態庫或靜態庫文件libnetwork.so,就類似下面這樣
add_library( network?? SHARED ?
???????????? ${HEADER_FILES}? ${SOURCE_FILES}
???????? )
SET (LIBRARY_OUTPUT_PATH ../../lib)

將會在http://www.cnblogs.com/lib/里面多出一個libnetwork.so了,

轉載于:https://www.cnblogs.com/lchb/articles/2797495.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/274461.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/274461.shtml
英文地址,請注明出處:http://en.pswp.cn/news/274461.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

用 Vue3 手撕了個企業級項目,真香!

最近幾年,隨著短視頻、小程序、直播帶貨的火爆,前端開發工程師越來越熱門,薪資待遇也快接近后端開發工程師了,前端領域進化為內卷重災區。然而伴隨著 Vue 3.0 的發布,前端技術也迎來了一次大革新,像是字節跳…

界面設計語言_使用任何語言設計界面的提示

界面設計語言Designing for international audiences is challenging. I spent most of my career in Australia designing exclusively in English. Australian English is ‘unique’ in the sense that we are really into slang, puns, idioms.為國際觀眾設計是具有挑戰性的…

托管代碼和非托管代碼

托管代碼和非托管代碼有什么區別呢?從字面上理解,只是一個是被托管的,另一個是沒有被托管的。但是,被托管的托管代碼是被誰管著呢?讓我們先來看看它們的定義。 托管代碼:由公共語言運行庫環境(而…

如何實現前端新手引導功能?

大家好,我是若川。我持續組織了近一年的源碼共讀活動,感興趣的可以 點此掃碼加我微信 lxchuan12 參與,每周大家一起學習200行左右的源碼,共同進步。同時極力推薦訂閱我寫的《學習源碼整體架構系列》 包含20余篇源碼文章。歷史面試…

hp-ux鎖定用戶密碼_UX設計101:提出正確的問題-規劃和促進用戶訪談

hp-ux鎖定用戶密碼這是什么? (What is this?) This session is part of a learning curriculum that I designed to incrementally skill up and empower a team of Designers and Researchers whose skillset and ways of working needed to evolve to keep up wi…

我與掘金合作出了源碼共讀第一期,首發超400人報名,快來參與~

大家好,我是若川。最近有不少新朋友關注我。對我不是很了解的,或許可以讀我的2021年度總結。誠邀各位新老讀者朋友參加源碼共讀活動。同時我和掘金合作,共同出了源碼共讀第一期,11月25日——12月25日,獎品豐厚。我是前…

ASP.NET repeater添加序號列的方法

ASP.NET repeater添加序號列的方法 1、<itemtemplate> <tr><td> <%# Container.ItemIndex 1%> </td></tr> </itemtemplate> 2、<itemtemplate> <tr><td> <%# this.rpResult.Items.Count 1%> </td>&…

mac基本操作技巧_6個基本設計技巧

mac基本操作技巧“In everything you do, refine your skills and knowledge about fundamental concepts and simple cases. Once is never enough. As you revisit fundamentals, you will find new insights. It may appear that returning to basics is a step backward an…

如何突破技術瓶頸(適合P6以下)

大家好&#xff0c;我是若川。我持續組織了近一年的源碼共讀活動&#xff0c;感興趣的可以 點此掃碼加我微信 lxchuan12 參與&#xff0c;每周大家一起學習200行左右的源碼&#xff0c;共同進步。同時極力推薦訂閱我寫的《學習源碼整體架構系列》 包含20余篇源碼文章。歷史面試…

stack smash_扶手椅VGUX:Super Smash Bros.Ultimate

stack smashEasily far the most exciting news out of Super Smash Bros. Ultimate’s announcement was that every single character would be returning to the game.asily迄今為止最令人興奮的消息了任天堂明星大亂斗最終宣布的是&#xff0c; 每一個字符會被返回到游戲中…

《Two Dozen Short Lessons in Haskell》學習(十)- Private Definitions — the where-clause

《Two Dozen Short Lessons in Haskell》&#xff08;Copyright © 1995, 1996, 1997 by Rex Page&#xff0c;有人翻譯為Haskell二十四學時教程&#xff0c;該書如果不用于贏利&#xff0c;可以任意發布&#xff0c;但需要保留他們的copyright&#xff09;這本書是學習 Ha…

我和掘金合作的源碼共讀小冊報名快1000人了~

眾所周知&#xff0c;我和掘金合作出了源碼共讀第一期。我是前端領讀員。現在報名快1000人了~獎品豐厚。也有一些小伙伴已經寫了好幾期筆記了~但相對1000人寫的還是太少。什么&#xff1f;你不知道&#xff1f;那也很正常&#xff0c;畢竟我的公眾號常讀人數比較少。大部分人都…

【短語學習】盈余量分析(earned value analysis)

作者&#xff1a;gnuhpc 出處&#xff1a;http://www.cnblogs.com/gnuhpc/ 各種形式的盈余量分析是衡量執行時最常用的方法。它把范圍、成本和進度等度量標準結合在一起以幫助項目管理小組評估項目執行。對每項活動而言&#xff0c;盈余量分析包括計算三個主要數值&#xff1a;…

配音劇本_網絡的各個階段:劇本如何傳達更好的UX

配音劇本讓我們將焦點放在使用劇本技巧提升顯微鏡上。 (Let’s put the spotlight on elevating microcopy with playwriting techniques.) “Anything you put in a play — any speech — has got to do one of two things: either define character or push the action of t…

極致編譯速度,一文搞定webpack5升級

大家好&#xff0c;我是若川。我持續組織了近一年的源碼共讀活動&#xff0c;感興趣的可以 點此掃碼加我微信 lxchuan12 參與&#xff0c;每周大家一起學習200行左右的源碼&#xff0c;共同進步。同時極力推薦訂閱我寫的《學習源碼整體架構系列》 包含20余篇源碼文章。歷史面試…

Java學習筆記(7)——輸入輸出

1、File 不同的操作系統對于檔案系統路徑的設定各有差別&#xff0c;例如在Windows中&#xff0c;一個路徑的表示法可能是&#xff1a; "c:\\Windows\\Fonts\\" 而在Linux下的路徑設定可能是&#xff1a; "/home/justin/" Windows的路徑指定是使用UNC&…

全庫模式 用戶模式 表模式_暗模式,亮模式和用戶的故事

全庫模式 用戶模式 表模式I have been working on designing a UI for an app that has individuals over the age of 60 as its main audience. At some point, I found my design more appealing in dark mode. As a UX designer, I know that my opinions and preferences d…

Rollup 與 Webpack 的 Tree-shaking

大家好&#xff0c;我是若川。我持續組織了近一年的源碼共讀活動&#xff0c;感興趣的可以 點此掃碼加我微信 lxchuan12 參與&#xff0c;每周大家一起學習200行左右的源碼&#xff0c;共同進步。同時極力推薦訂閱我寫的《學習源碼整體架構系列》 包含20余篇源碼文章。歷史面試…

聚類與分類的主要區別在于:_經驗在于細節:分析流服務的用戶體驗

聚類與分類的主要區別在于&#xff1a;看不見的差異 (The Invisible Difference) When app markets mature the overlap in features and designs grows closer as they catch up and copy each other. The more similar the apps are to one another, the more important the …

asp.net 動態創建TextBox控件 如何加載狀態信息

接著上文Asp.net TextBox的TextChanged事件你真的清楚嗎&#xff1f; 這里我們來說說狀態數據時如何加載的。雖然在Control中有調用狀態轉存的方法&#xff0c;但是這里有一個判斷條件 if (_controlState > ControlState.ViewStateLoaded) 一般的get請求這里的條件是不滿足…