編譯虐我千百遍,我待編譯如初戀。
我想要編譯乙個單檔案allinone.cc。這個檔案包含了其他的標頭檔案,目錄如下。
為此,我在 shell中輸入
g++ allinone.cc -std=c++11 -lmuduo_net -lmuduo_base -lpthread
結果編譯失敗,報錯:
雖然allinone.cc包含了這些個頭檔案,但在操作中,由於沒有編譯這些標頭檔案,也就無從鏈結,從而出現未定義引用。
機(cai)智(ji)如我,將這些標頭檔案及他們相應的.cc原始檔放到allinone.cc的目錄中,然後修改allinone.cc檔案的包含,如下:
再shell中輸入:
沒錯,我把所有檔名都再shell中寫上了。編譯成功,perfect(撒花)。
是時候學一波makefile了。
linux多檔案編譯方法
一.常用編譯命令選項 假設源程式檔名為test.c。1.無選項編譯鏈結 用法 gcc test.c 2.選項 o 用法 gcc test.c o test 3.選項 e 用法 gcc e test.c o test.i 作用 將test.c預處理輸出test.i檔案。4.選項 s 用法 gcc s ...
Linux下多檔案的編譯(2)
myhello.c include include test.h include abc.h void print void int main void print void abc.c include abc.h void abc void abc.h include void abc void ...
Linux 下Fortran多檔案編譯
或者ifort o exe name main.f90 fun.f90 方法二 在主程式main.f90 中加入include fun.f90 語句,然後在linux下用fortran命令編譯,命令如下 ifort o exe name main.f90 方法三 分步驟編譯,命令如下 ifort c...