Gcc 在Solaris 10上使用Binutils构建失败

Gcc 在Solaris 10上使用Binutils构建失败,gcc,runtime-error,ld,binutils,solaris-10,Gcc,Runtime Error,Ld,Binutils,Solaris 10,我已在Solaris 10上成功构建并安装了最新的binutils-2.22 但是,当我尝试使用已安装的程序(如ld和或时,会出现运行时错误: ld.so.1: ld: fatal: relocation error: file /home/pernord/alt/bin/ld: symbol __clz_tab: referenced symbol not found 我已经广泛地搜索了错误,但所有的点击似乎与我的问题无关 从我所读到的\u clz\u tab似乎与“libgcc”有关 至少

我已在Solaris 10上成功构建并安装了最新的binutils-2.22

但是,当我尝试使用已安装的程序(如
ld
时,会出现运行时错误:

ld.so.1: ld: fatal: relocation error: file /home/pernord/alt/bin/ld: symbol __clz_tab: referenced symbol not found
我已经广泛地搜索了错误,但所有的点击似乎与我的问题无关

从我所读到的
\u clz\u tab
似乎与“libgcc”有关

至少libgcc包含符号
clz

strings /lib/*/libgcc* | grep clz

任何人的想法?

\uuuuCLZ\uTab
是libgcc中的一个表,用于实现clz(“计数前导零”)函数

您的binutils可执行文件是否依赖于
libgcc\u.so
ldd/home/pernord/alt/bin/ld
显示了什么


如果
libgcc_s.so
不在您的库搜索路径中,您可能需要使用
crle(1)
来添加它。

如果我想为整个GNU工具套件编译最新版本,通常是binutils和gcc及其所有代理,通过将binutils链接到gcc树中并使binutils使用最新版本的libgcc,一次编译所有内容是否更好?将所有内容构建在一起的“组合树”构建可能只适用于来自cvs(用于binutils)和svn(用于gcc)的最新开发源。如果您希望生成发布版本(例如binutils 2.22和GCC 4.7.1)而不是开发快照,那么最好的方法是首先生成并安装binutils,然后将GCC安装到相同的位置(即使用相同的
--前缀
选项)如果binutils工具在其
前缀中已经存在,GCC将自动拾取它们并使用它们。