Ubuntu如何重新安装g++编译器

不知道怎么搞的,我在VM虚拟机中安装的Ubuntu 11里的g++编译器不见了,具体表现为在Terminal输入g++,系统提示没安装,用sudo apt-get install g++来安装,系统却又说g++已经是最新版本了。gcc编译器倒是一切正常。
  没办法,为了用上g++,只好尝试着卸载重装,以下是卸载重装的过程:
  1.执行sudo apt-get remove gcc,发现只是卸载了gcc这个链接,几百K大小;
  2.执行sudo apt-get remove gcc-4.6(4.6是我安装的编译器版本),这回说“解压缩后将会空出 15.9 MB 的空间”;
  3.为了确保卸载干净,又执行sudo apt-get remove g++-4.6,系统说“E: 未发现软件包 g++-4.6”,看来是卸掉了;
  4.执行sudo apt-get install gcc,系统报错:“E: 软件包 gcc 没有可供安装的候选者”,无法安装gcc;
  5.执行sudo apt-get install gcc-4.6,系统又报以下错误:
现在没有可用的软件包 gcc-4.6,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
可是下列软件包取代了它:
cpp-4.6

E: 软件包 gcc-4.6 没有可供安装的候选者

  6.执行sudo apt-get install cpp-4.6,系统报“cpp-4.6 已经是最新的版本了”;
  7.执行sudo apt-get install g++,系统出现以下提示:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会安装下列额外的软件包:
g++-4.6 gcc gcc-4.6 libstdc++6-4.6-dev
建议安装的软件包:
g++-multilib g++-4.6-multilib gcc-4.6-doc libstdc++6-4.6-dbg gcc-multilib autoconf automake1.9
libtool gcc-doc gcc-4.6-multilib libmudflap0-4.6-dev gcc-4.6-locales libgcc1-dbg libgomp1-dbg
libquadmath0-dbg libmudflap0-dbg binutils-gold libstdc++6-4.6-doc
下列【新】软件包将被安装:
g++ g++-4.6 gcc gcc-4.6 libstdc++6-4.6-dev
升级了 0 个软件包,新安装了 5 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 15.3 MB 的软件包。
解压缩后会消耗掉 40.9 MB 的额外空间。
您希望继续执行吗?[Y/n]


  按y键,等安装完,再输入gcc --version(或gcc -v)及g++ --version(或g++ -v),发现都已经安装上了,用它们分别编译C和C++代码,也可以正常使用了。

  原来,重装g++时必须先将gcc和g++卸载干净,然后再直接安装g++,等安装完,gcc也自动安装上了。晕啊……


  咳咳……今天(2013.09.13)晚上我在VM中的另一个Ubuntu虚拟机同样遇到g++不能使用而gcc正常的情况,按照上面的方法先卸掉gcc,但在安装g++时死活装不上,系统提示一大堆的包“已经是最新的版本了”,最后提示“升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。”,折腾了好一会儿,忽然想起来之前曾经因为不想看到Ubuntu的更新提示,将”系统设置“/”软件源“中所有更新选项都去掉了,当然也就不能在线安装g++了!将系统更新选项重新打开,g++安装成功!晕……

展开阅读全文

没有更多推荐了,返回首页