c++ 使用g创建静态库的优化和标志

我刚刚从g编译器在Linux上开始,并得到一些关于编译器标志的问题。这是他们

优化

我阅读关于优化标志-O1,-O2和-O3在g手册页。我不明白什么时候使用这些标志。通常什么优化级别你使用? g手册说明以下为-O2。

Optimize even more. GCC performs nearly all supported optimizations that do not involve a space-speed tradeoff. The compiler does not perform loop unrolling or function inlining when you specify -O2. As compared to -O, this option increases both compilation time and the performance of the generated code.

如果它不是内联和循环展开,如何实现所述性能适应,是这个选项推荐?

静态库

如何使用g创建静态库?在Visual Studio中,我可以选择一个类库项目,它将被编译成“lib”文件。 g中的等价物是什么?

经验法则:

当需要调试时,使用-O0(和-g来生成调试符号。)

当您准备发货时,请使用-O2。

当你使用gentoo,使用-O3 …!

当您需要将其放在嵌入式系统上时,请使用-Os(针对大小进行优化,而不是为了提高效率)。

相关文章
相关标签/搜索