所有人!
我也有同样的结果
**
加载共享库时出错:libmpfr.so.4:无法打开共享库
对象文件:没有这样的文件或目录
但在另一种配置下:
../gcc.s/configure \
--target=$LFS_TGT \
--prefix=/tools \
--with-sysroot=$LFS \
--with-newlib \
--without-headers \
--with-local-prefix=/tools \
--with-native-system-header-dir=/tools/include \
--disable-nls \
--disable-shared \
--disable-multlib \
--disable-decimal-float \
--disable-threads \
--disable-libmudflap \
--disable-libssp \
--disable-libgomp \
--disable-libquadmath \
--enable-language=c
在gcc源树中存在gmp、mpc、mpfr
我的问题是
结果如何
--disable-shared
启用链接cc1以防
libmpfr.so.4
insteed staticlibmpfr.a
在gcc构建结果中显示:
gcc.b/mpfr/src/.libs/libmpfr.a
最佳答案
首先,运行pacman -Syu
并执行任何/所有更新。确保注意Pacman的输出(如果有大量输出,则检查/var/log/pacman.log
)。查找并合并找到的任何.pacnew文件,日志将显示这些文件的位置,或者您也可以ls -al /etc/*.pacnew
,但无论如何请检查日志,以确保您没有遗漏任何子目录或其他位置中的任何文件。另外,如果更新了内核,请确保重新启动。如果这不能解决问题,那么根据最新的库重新构建mpfr。
Here是有关处理.pacnew和.pacsave文件的Arch Linux Wiki的链接。
执行完全更新# pacman -Syu
如果mpfr不能从更新中修复# pacman -Syu mpfr
在安装/更新时始终使用-Syu
,以确保所有repo都已更新。
正在检查libmpfr.so.*所有权。# pacman -Qo /usr/lib/libmpfr.so
/usr/lib/libmpfr.so.4.1.1 is owned by mpfr 3.1.1.p2-2
如果您在更新后遇到任何问题,请在Pastebin站点上粘贴日志和错误消息,我将查看。
对不起的,
我以为这个标签是[archlinux]
的,但显然不是(谢谢jonathan wakely)。不过,同样的步骤也适用。将pacman -*
替换为分发包管理器apt-get
,yum
,emerge
,无论它是什么。MPFR必须根据新的库进行重建。
关于linux - 具有--disable-shared的libmpfr.so.4依赖项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15326978/