我想让我gcc总是默认添加一些标志,有没有一个干净的方法来做到这一点?
基本上我每次调用时都会传递一些标志gcc,例如(但不限于)-g(因此它有调试信息).
有几种解决方法,但它们很难看:
alias g++=...,但我不喜欢这种方法;我宁愿只修改specs文件,以便一切都是无缝的.
运行strace gcc | grep specs以查看它在哪里搜索specs文件,然后去那里运行gcc -dumpspecs > specs.您现在已准备好要编辑的specs文件.使用此参考:https://gcc.gnu.org/onlinedocs/gcc/Spec-Files.html
修改specs文件的麻烦在于,你一旦改变了对某些选项的想法,你就无法从命令行取消它;你必须去修改specs文件。您还必须记住在升级编译器时重新修改新的specs文件。
另外,您多久从命令行运行编译器一次?我知道我唯一直接这样做的时候是当我需要临时破解命令行并且我懒得去解决如何修复 makefile 中的编译器选项时,所以我从make 的输出,然后运行编译器。一个问题alias是它无法在makefile. 因此,对我来说,问题会减少到确保每个 makefile 中都使用编译器选项。
| 归档时间: |
|
| 查看次数: |
5645 次 |
| 最近记录: |