大家好! 我有相同的结果 **
加载共享库时出现错误: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 static libmpfr.a
相关联
它存在于gcc构建结果中:
gcc.b/mpfr/src/.libs/libmpfr.a
答案 0 :(得分:0)
首先,运行pacman -Syu
并执行任何/所有更新。 确保注意pacman的输出 (如果有很多输出,请检查/var/log/pacman.log
)。查找并合并任何找到的.pacnew,日志将显示这些文件的位置,或者您也可以ls -al /etc/*.pacnew
,但无论如何都要检查日志,以确保您没有错过任何子目录或其他位置。此外,如果更新内核,请确保重新启动。如果这不能解决问题,那么就针对最新的库重建mpfr。
Here是处理.pacnew和.pacsave文件的Arch Linux Wiki的链接。
# pacman -Syu
# pacman -Syu mpfr
始终 在安装/更新时使用-Syu
以确保所有回购都已更新。
# 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。