ふわふわ時間

0%

Linux相关小问题

这个人明明遇到过很多问题,却总是忘了记录。


手动卸载旧版本软件,安装完新版本之后,提示 No such file or directory 怎么办?

  1. 使用 echo $PATH 命令检查环境变量,如新版本软件安装路径不在环境变量中,添加。如新版本软件安装路径已在环境变量中,转 2.
    • 添加环境变量:编辑 /etc/profile or /ect/environment or ~/.bashrc
  2. 因为 bash 路径是有缓存的,只要运行过的命令,bash 就会保存到一张 hash 表中,下次直接从 hash 表中找地址,故需要我们手动删除缓存
    • 运行 hash 命令,查看缓存的 hash 表
    • 运行 hash -d <softname> 删除掉 <softname> 的缓存

gcc/g++ 版本切换

  1. 查看所安装的各个版本
1
2
ls /usr/bin/gcc*
ls /usr/bin/g++*
  1. 设置候选优先级
1
2
3
4
5
6
7
# 以 gcc-5 和 gcc-7 为例,最后的数字是优先级,数字越大,优先级越高
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 100
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 80

# 以 g++-5 和 g++-7 为例,最后的数字是优先级,数字越大,优先级越高
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 100
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 80
  1. 切换版本
1
2
3
update-alternatives --config gcc

update-alternatives --config g++

注意保持 gcc 和 g++ 的版本一致。