linux怎么編譯cpp文件?

linux怎么編譯cpp文件?

假如我們有一個(gè)寫(xiě)好的demo.cpp函數(shù),我們?cè)?a href="http://m.babyishan.com/tag/linux">linux系統(tǒng)下如何編譯程序并運(yùn)行出結(jié)果呢?

我們可以執(zhí)行命令:

g++?demo.cpp?-o?demo

生成可執(zhí)行程序demo,然后再執(zhí)行命令:

./demo

即可以執(zhí)行程序了。

同理,如果是 .c 文件,則可以執(zhí)行命令:

gcc?demo.c?-o?demo

此外,在編譯的時(shí)候,我們?nèi)绻枰砑宇^文件,庫(kù)文件的路徑的時(shí)候,可以參考以下幾個(gè)參數(shù):

-l:用來(lái)指定程序要鏈接的庫(kù), -l 參數(shù)緊接著就是庫(kù)名。而庫(kù)名和真正的庫(kù)文件名之間的關(guān)系,可以解釋為:假如庫(kù)名為caffe,它的庫(kù)文件名則是libcaffe.so。

-L:編譯程序按照 -L 指定的路進(jìn)去尋找?guī)煳募?,一般的,?-L 的后面可以一次用 -l 指定多個(gè)庫(kù)文件。例如linux下的.a(靜態(tài)庫(kù)) 和.so(動(dòng)態(tài)庫(kù))。

-I:編譯程序按照 -I 指定的路進(jìn)去搜索頭文件。(xxx.h)

舉個(gè)例子,假設(shè)我寫(xiě)好了一個(gè) demo.cpp 文件,需要用到 caffe 的相關(guān)文件,可以執(zhí)行命令:

g++?demo.cpp?-o?demo?-I?~/caffe/include/?-D?CPU_ONLY? -I?~/caffe/.build_debug/src/?-L?~/caffe/build/lib?-lcaffe

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊13 分享