编译gcc10踩了个小坑

@vrqq  July 5, 2020

20200730 Update:
Use spack to make it super easily. https://blog.vrqq.org/archives/690/

--------分割线-------------

首先gcc10依赖

  • libgmp
  • libmpfr 这个依赖上面那个
  • libmpc 这个以来上面两个

然后就就无脑

./configure --prefix=/home/xx/envlocal/
make
make install

然后在libmpc时候喜获一个提示:

libtool: link: `/usr/local/lib/libgmp.la' is not a valid libtool archive

我就很奇怪我指定了prefix 这个目录哪里来的呢,搜了下libmpc的makefile 没啥问题啊!

特别迷
因为libmpc引用了libmpfr库,
libmpfr在编译时候引用了libgmp
libgmp.la这个文件有bug,似乎是他的编译脚本里libtool路径写错了!

所以vim /home/xx/envlocal/lib/libgmp.la 看到那个错误路径了吧!
然后再改依赖他的/home/xx/envlocal/lib/libmpfr.la 里面的路径也是错的
然后 ok啦!


已有 2 条评论

  1. Ling Ling

    您好,麻烦请问最后一行应该改成什么路径呢?

    1. 改成他的lib本体应该在的位置,可以看一下libgmp安装到哪里了,一般那个比较大的就是binary本体。(可以用file命令例如 file xxx.a看一下文件格式)
      记事本打开libgmp.la这个文件一看就明白啦

添加新评论