我无意中gcc
用手动构建的系统删除了我的系统。为了恢复一切,我做了yum reinstall gcc
并gcc --version
证明初始版本已恢复:
$ which gcc
/usr/bin/gcc
$ gcc --version
gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-7)
...
但是,当我尝试编译代码时,出现以下错误:
g++: fatal error: -fuse-linker-plugin, but liblto_plugin.so not found
我查看了/usr/lib64
和/usr/lib
,没有发现任何符号链接liblto_plugin.so
。我发现它是在/usr/libexec/gcc/x86_64-redhat-linux/4.8.3/liblto_plugin.so
.
然后我做了几次努力让编译器指向它:
g++ hello.cpp -L/usr/libexec/gcc/x86_64-redhat-linux/4.8.3/
export LD_LIBRARY_PATH=/usr/libexec/gcc/x86_64-redhat-linux/4.8.3/:$LD_LIBRARY_PATH
cd /usr/lib64
ln -s /usr/libexec/gcc/x86_64-redhat-linux/4.8.3/liblto_plugin.so
cd ~; g++ hello.cpp -L/usr/lib64/
ldcondig -n /usr/libexec/gcc/x86_64-redhat-linux/4.8.3/
这些都没有帮助。错误仍然出现。我应该怎么办?
答案1
您是否考虑过在不同的硬盘(或虚拟机内)上使用与 Fedora 20 上现在相同的软件包安装新系统,然后从那里复制整个 /var 和 /usr 目录?