且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何使用多个源文件通过 gcc 创建单个目标文件

更新时间:2022-01-08 00:52:06

其他人提到了存档,但另一个选项是 Unity builds.

Others have mentioned archive, but another option is Unity builds.

代替:

g++ -c file1.cpp file2.cpp

创建一个单独的统一文件"

Create a separate "unity file"

// This is the entire file (unity.cpp)
#include "file1.cpp"
#include "file2.cpp"
// more if you want...

然后

g++ -c unity.cpp

在很多情况下,这还具有编译和链接速度更快的优点(因为 file1.cppfile2.cpp 使用的标头都只解析一次).但是,如果您将太多文件放在一个单一的单元中,那么您会发现您需要重建比您想要的更多的源,因此您需要尝试取得平衡.

This also has the advantage of faster compilation and linking in many cases (because headers used by both file1.cpp and file2.cpp are only parsed once). However, if you put too many files in a single unity however then you'll find that you need to rebuild more sources than you wanted to, so you need to try and strike a balance.