weixin_43496057 2024-07-24 10:18 采纳率: 25%
浏览 5

centos 7 gcc升级后配置完无法启动gcc 看一下哪里配置错了 现在gcc -v 显示无文件了

centos 7 gcc升级后配置完无法启动gcc 帮忙看一下哪里配置错了
现在gcc -v 显示无文件了


```bash

Libraries have been installed in:
   /usr/local/gcc-10.2.0/lib/../lib64

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
make[4]: 对“install-data-am”无需做任何事。
make[4]: 离开目录“/data/gcc-10.2.0/x86_64-pc-linux-gnu/libatomic”
make[3]: 离开目录“/data/gcc-10.2.0/x86_64-pc-linux-gnu/libatomic”
make[2]: 离开目录“/data/gcc-10.2.0/x86_64-pc-linux-gnu/libatomic”
make[1]: 离开目录“/data/gcc-10.2.0”
[root@localhost gcc-10.2.0]# find / -name "libstdc++.so*"
/usr/lib/gcc/x86_64-redhat-linux/4.8.2/32/libstdc++.so
/usr/lib/gcc/x86_64-redhat-linux/4.8.2/libstdc++.so
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.19
/usr/lib64/libstdc++.so.6.0.22
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.19-gdb.py
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.19-gdb.pyc
/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.19-gdb.pyo
/usr/local/gcc-10.2.0/lib/libstdc++.so.6.0.28
/usr/local/gcc-10.2.0/lib/libstdc++.so.6
/usr/local/gcc-10.2.0/lib/libstdc++.so
/usr/local/gcc-10.2.0/lib/libstdc++.so.6.0.28-gdb.py
/usr/local/gcc-10.2.0/lib64/libstdc++.so.6.0.28
/usr/local/gcc-10.2.0/lib64/libstdc++.so.6
/usr/local/gcc-10.2.0/lib64/libstdc++.so
/usr/local/gcc-10.2.0/lib64/libstdc++.so.6.0.28-gdb.py
/data/gcc-10.2.0/prev-x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so.6.0.28
/data/gcc-10.2.0/prev-x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so.6
/data/gcc-10.2.0/prev-x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so
/data/gcc-10.2.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.28
/data/gcc-10.2.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
/data/gcc-10.2.0/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so
/data/gcc-10.2.0/stage1-x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so.6.0.28
/data/gcc-10.2.0/stage1-x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so.6
/data/gcc-10.2.0/stage1-x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so
/data/gcc-10.2.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.28
/data/gcc-10.2.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
/data/gcc-10.2.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so
/data/gcc-10.2.0/x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so.6.0.28
/data/gcc-10.2.0/x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so.6
/data/gcc-10.2.0/x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs/libstdc++.so
/data/gcc-10.2.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.28
/data/gcc-10.2.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6
/data/gcc-10.2.0/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so

mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak
mv /usr/lib64/libstdc++.so /usr/lib64/libstdc++.so.bak

mv /usr/bin/gcc /usr/bin/gcc485
mv /usr/bin/g++ /usr/bin/g++485
mv /usr/bin/c++ /usr/bin/c++485
mv /usr/bin/cc /usr/bin/cc485

#创建新软连
ln -s /usr/local/gcc-10.2.0/bin/gcc /usr/bin/gcc
ln -s /usr/local/gcc-10.2.0/bin/g++ /usr/bin/g++
ln -s /usr/local/gcc-10.2.0/bin/c++ /usr/bin/c++
ln -s /usr/local/gcc-10.2.0/bin/gcc /usr/bin/cc

ln -s /usr/local/gcc-10.2.0/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6
ln -s /usr/local/gcc-10.2.0/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so


```

  • 写回答

4条回答 默认 最新

  • 阿里嘎多学长 2024-07-24 10:18
    关注

    以下内容由AIGC及阿里嘎多学长共同生成、有用望采纳:


    从用户提供的信息来看,用户在CentOS 7系统中升级了GCC编译器到10.2.0版本,并在配置过程中遇到了问题,导致无法启动新的GCC编译器。以下是对问题原因的分析和解决方案:

    问题分析

    1. 库文件路径问题:用户在升级GCC后,需要确保系统能够找到新版本的库文件。从输出信息来看,新版本的库文件被安装在/usr/local/gcc-10.2.0/lib64目录下。

    2. 环境变量配置:用户需要将新GCC的库文件路径添加到LD_LIBRARY_PATH环境变量中,以便系统能够找到这些库文件。

    3. 软链接问题:用户已经尝试通过创建软链接将新GCC的可执行文件和库文件链接到系统默认路径,但可能存在配置错误。

    解决方案

    1. 更新环境变量

      • 将新GCC的库文件路径添加到LD_LIBRARY_PATH环境变量中。可以通过编辑/etc/profile~/.bashrc文件来实现:
        export LD_LIBRARY_PATH=/usr/local/gcc-10.2.0/lib64:$LD_LIBRARY_PATH
        
      • 然后,重新加载配置文件以应用更改:
        source /etc/profile
        
    2. 检查软链接

      • 确保软链接正确指向新GCC的可执行文件和库文件。可以使用ls -l命令检查链接是否正确:
        ls -l /usr/bin/gcc
        ls -l /usr/lib64/libstdc++.so.6
        
      • 如果软链接不正确,需要重新创建它们:
        ln -sf /usr/local/gcc-10.2.0/bin/gcc /usr/bin/gcc
        ln -sf /usr/local/gcc-10.2.0/bin/g++ /usr/bin/g++
        ln -sf /usr/local/gcc-10.2.0/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6
        
    3. 检查系统库文件

      • 用户已经将系统的libstdc++.so.6重命名为libstdc++.so.6.bak,这可能会导致系统其他依赖该库的程序出现问题。建议恢复这些文件:
        mv /usr/lib64/libstdc++.so.6.bak /usr/lib64/libstdc++.so.6
        mv /usr/lib64/libstdc++.so.bak /usr/lib64/libstdc++.so
        
    4. 重新编译并安装

      • 如果上述步骤仍然无法解决问题,可能需要重新编译并安装GCC。确保在编译过程中遵循正确的步骤,包括配置、编译和安装。
    5. 验证GCC版本

      • 在完成上述步骤后,使用gcc -v命令来验证GCC版本是否正确显示。

    注意事项

    • 在进行系统级别的更改时,建议先在非生产环境中测试。
    • 确保在修改环境变量或创建软链接之前备份原始文件。
    • 如果不熟悉系统库的管理,建议寻求有经验的系统管理员的帮助。

    以上步骤应该能够帮助用户解决GCC升级后无法启动的问题。如果问题仍然存在,可能需要更详细的系统日志来进一步诊断问题。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 7月24日

悬赏问题

  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见
  • ¥15 一共有五道问题关于整数幂的运算还有房间号码 还有网络密码的解答?(语言-python)
  • ¥20 sentry如何捕获上传Android ndk 崩溃
  • ¥15 在做logistic回归模型限制性立方条图时候,不能出完整图的困难
  • ¥15 G0系列单片机HAL库中景园gc9307液晶驱动芯片无法使用硬件SPI+DMA驱动,如何解决?