我曾经使用错误的前缀(--prefix=/home/.../usr)构建并安装了gcc和binutils,并将其传递给了配置脚本。
现在我用正确的前缀(--prefix=/usr)重新配置、重新构建和重新安装了gcc和binutils,但是编译总是失败,并显示:
$ /bin/ld: cannot find /home/../usr/lib/libc.so.6当然,我可以通过符号链接库来使其工作,但我想知道这些路径保存在哪个文件中,以及如何更改它们。
发布于 2013-02-05 12:42:45
现在我使用正确的前缀(--=/usr)重新配置、重新构建并重新安装了gcc和binutils,但是编译总是失败,并显示以下信息:
$ /bin/ld:找不到/home/../usr/lib/libc.so.6
您可能没有重新构建和重新安装libc,错误来自于它。
在Linux上,libc.so是一个链接器脚本,类似于:
/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
OUTPUT_FORMAT(elf64-x86-64)
GROUP ( /lib/x86_64-linux-gnu/libc.so.6 /usr/lib/x86_64-linux-gnu/libc_nonshared.a AS_NEEDED ( /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 ) )我敢打赌你的libc.so里面有/home/../usr/lib/libc.so.6。
https://stackoverflow.com/questions/14112538
复制相似问题