我在我的mac上安装了gcc5.3.0,然后我把它打破了。我该怎么做才能重用apple-gcc42?

时间:2016-08-24 05:12:41

标签: macos gcc

我使用rm -rf删除gcc5.3.0,但mac继续使用gcc5.3.0。 错误的信息:     g ++:试图执行'cc1plus'时出错:execvp:没有这样的文件或目录

如何重复使用apple-gcc42?

1 个答案:

答案 0 :(得分:1)

将评论和回复编辑成答案。

GCC 5.3.0在哪里安装?它从哪里来的?您是创建它还是来自Apple或其中一个辅助包装商?您的递归删除实际删除了什么吗?运行xcode-select有帮助吗? (使用man xcode-select查看它的作用;也许xcode-select --install很有用,但我不确定,因为我从未破坏过我的编译系统。)你安装了哪个版本的XCode?您正在运行哪个版本的Mac OS X?

  

GCC5.3.0安装在/usr/local/libexec/gcc/x86_64-apple-darwin15.0.0/5.3.0。我删除了文件夹gcc。我的Mac OS X是10.11.6,我的Xcode是7.3.1。

删除/usr/local/lib/libexec/gcc并未删除/usr/local/bin中的可执行文件,因此当您运行g++时,shell仍然会找到可执行文件/usr/local/bin/g++,但是找不到它的辅助程序,因为你确实设法删除它们。您还没有清除/usr/local/include等下安装的标头。请勿使用rm -fr;当您必须卸载像GCC这样的复杂软件套件时,它是粗略的,只是部分有效。您也可以使用/usr/bin/g++代替g++

  

那我现在该怎么办?

您需要完成删除工作 - 至少从gcc删除g++/usr/local/bin。这应该会让/usr/bin/gcc/usr/bin/g++作为编译器。您可能必须运行hash -r或启动一个新的终端窗口以避免Bash缓存编译器的位置(但您会得到bash: /usr/local/bin/g++ not found或类似的错误消息。)

  

谢谢。这对我有用!