GCC是否有一个选项可以改变它使用的汇编程序的路径?我在使用GCC尝试编译Haskell时从Solaris /usr/ccs/bin/as
收到错误,但是我的路径中有一份GNU as
,所以当我输入which as
和{{ 1}}他们使用的是GNU版本,而不是Solaris版本。不幸的是,似乎GCC忽略了路径中的GNU版本并转到了Solaris版本。我正在尝试在Solaris上构建Haskell,我不认为它与Solaris汇编程序配合得很好。我希望我可以用一个简单的包装器脚本来改变这种行为,所以我不必重新编译GCC。
答案 0 :(得分:2)
在运行时无法指定要使用的汇编程序。必须在配置gcc:
时完成<强> - 与-GNU-作为强>
指定编译器应该假定它找到的汇编程序是GNU 汇编。但是,这不会修改查找汇编程序的规则 如果发现的汇编程序实际上不是GNU汇编程序,则会导致混淆。 (如果编译器找到GNU汇编程序但没有,则可能会导致混淆 已配置--with-gnu-as。)
请注意我用斜体字表示的部分。当然你可以暂时改变/usr/ccs/bin/as
来调用gnu汇编程序(如果你有必要的权限),但上面似乎表明你很可能会遇到问题。 gcc构建过程实际上检查汇编程序支持的功能,并为该汇编程序生成代码。
我建议你先构建一个新版本的gcc(配置为使用gnu工具),然后用它来构建ghc。