传递给 gcc 的多个源文件是否被视为一个翻译单元?

Are multiple source files being passed to gcc treated as a single translation unit?

我想我已经读到,根据 Single Compilation Unit,同时使用 gcc 编译多个文件将实现与将所有源添加到单个源文件中相同的效果,但我再也找不到任何消息来源了。是真的吗?

我们目前正在尝试将二进制文件缩小到尽可能小的尺寸,并正在应用多种技术来实现这一目标。我们讨论的重点是单个编译单元 Link Time Optimization 和更改构建以在单个编译器调用中编译所有源代码之间的区别,例如 gcc -o binary $CFLAGS $INCLUDES $CDEFS a.c b.c c.c d.c e.c.

没有。每个传递给编译器的独立 .c 文件都被视为一个翻译单元,因此传递给编译器的多个文件会产生多个独立的翻译单元。