C++交叉编译问题排查
1. 编译器版本的问题
1. 编译器版本的问题
上一篇《4. 用makefile构建程序》我们讲解了通过Makefile来编译 包含多个.cpp和多个.h文件 的复杂C++项目。这种方式用来构建中小型的Linux(或类Unix系统)C++项目,是没有问题的。但如果是跨平台项目或者大型项目,Makefile就显得力不从心了;因为Makefile不具备良好的跨平台性,大型项目的编译规则和依赖项也是比较复杂的,Makefile的编写和维护成本都比较高。这时,CMake就可以派上用场了。
Linux C++ 开发 系列的前面2篇文章,我们介绍了通过g++来编译C++代码。这对于HelloWorld程序或者简单的Demo程序来说没有问题,但对于包含多个.cpp和多个.h文件的复杂项目来说,直接用g++命令来编译的话,将会使编译的指令非常冗长且难于维护。这个时候我们可以考虑用makefile来构建我们的程序。