编译虐我千百遍,我待编译如初恋。
1,艰难的allinone.cc编译。
我想要编译一个单文件allinone.cc。这个文件包含了其他的头文件,目录如下。
为此,我在 shell中输入
g++ allinone.cc -std=c++11 -lmuduo_net -lmuduo_base -lpthread
结果编译失败,报错:
2.原因分析。
虽然allinone.cc包含了这些个头文件,但在操作中,由于没有编译这些头文件,也就无从链接,从而出现未定义引用。
3.解决办法
机(cai)智(ji)如我,将这些头文件及他们相应的.cc源文件放到allinone.cc的目录中,然后修改allinone.cc文件的包含,如下:
再shell中输入:
没错,我把所有文件名都再shell中写上了。编译成功,perfect(撒花)。
4.启发
是时候学一波makefile了。