有什么方法可以减少使用诸如gcc source_file.c -o result
之类的命令生成的可执行文件所使用的内存吗?我浏览了互联网,还在手册页中查找了“gcc”,我认为我应该使用与 -c
或 -S
相关的内容。那么 gcc -c -S source_file.c -o result 是否有效? (这似乎减少了使用的空间......还有其他方法可以减少更多吗?)
谢谢, 波尔布
最佳答案
standard compiler option在类 POSIX 系统上,指示编译器进行优化的命令是 -O
(大写字母 O 表示 optimize)。许多编译器允许您有选择地在 -O
之后指定优化级别。常见的优化级别包括:
-O0
根本没有优化-O1
速度的基本优化-O2
所有-O1
以及一些高级优化-O3
所有-O2
以及通常不需要的昂贵优化-Os
针对大小而不是速度进行优化(gcc、clang)-Oz
进一步优化尺寸 (clang)-Og
所有-O2
,除了妨碍调试 (gcc) 的优化-Ofast
所有-O3
以及一些不符合标准 C 的数值优化。请谨慎使用。 (海湾合作委员会)
关于c - 如何在 Linux 终端中优化 C 编译生成的可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33832162/