小编Mat*_*att的帖子

你如何构建旧的 gcc 版本?找不到关于 crti.o 的错误

如何在 Ubuntu 11.10 上构建较旧的 gcc(特别是 4.5.2)并避免有关“/usr/bin/ld:找不到 crti.o:没有此类文件或目录”的错误?

我做了一些挖掘,发现了几个类似的项目,但没有一个能真正解决我的问题:

  • 我已经验证了我所有的包(libc6-dev 等)都根据这个问题重新安装
  • 我已经验证 crti.o 存在于 /usr/lib32 和 /usr/lib/x86_64-linux-gnu 中,并且我的 ld.so.conf 配置为在这些目录中查找
  • 我已经验证在我的 make 调用前加上 LIBRARY_PATH=/usr/lib/x86_64-linux-gnu 有效,但想避免这种情况(它成为 makefile 中的一个分歧点)
  • 我用 --with-build-sysroot 尝试了各种方法,但没有成功(阅读:也许我只是不知道要设置的正确标志)
  • 使用 strace 运行时(根据这个答案),我可以看到对 crti.o 的引用:

    13240 open(“crti.o”,O_RDONLY)= -1 ENOENT(没有这样的文件或目录)

谢谢!

11.10 gcc

10
推荐指数
2
解决办法
1万
查看次数

标签 统计

11.10 ×1

gcc ×1