有没有办法用gcc禁止默认的库路径搜索?-nostdinc
对包含路径搜索执行此操作,但是-nostdlib
,通过省略或设计,仅禁止-lc -lgcc
等但不禁止库搜索路径.
Mat*_*ery 23
你应该可以用spec文件做到这一点(虽然摆弄这些对我来说似乎是一种黑暗的艺术......).
如果查看输出gcc -dumpspecs
,则link_command
规范是构建调用的实际命令的规范.挖掘它引用的一些其他规范,link_libgcc
规范,通常定义(至少为本地编译器):
*link_libgcc:
%D
Run Code Online (Sandbox Code Playgroud)
是罪魁祸首:
%D
为GCC认为可能包含启动文件的每个目录转储-L选项.如果目标支持multilibs,那么当前的multilib目录将被添加到这些路径中的每一个.
您可以通过创建my.specs
替换您选择的路径的文件(例如)来覆盖它:
*link_libgcc:
-L/foo/bar -L/blah/blah
Run Code Online (Sandbox Code Playgroud)
然后传递-specs=my.specs
给gcc
.