如何修复“没有手动输入gcc”?

时间:2014-05-15 17:08:09

标签: macos gcc homebrew man manpage

我以某种方式丢失了gcc和g ++的手册页。我不确定在哪里/找什么。我非常确定这些手册页面曾经在以前工作过。它也可以在我的Mac上工作,我使用大致相同的设置。这可能是酿造的问题吗?或者它是XCode命令行工具中的错误?

更新:我刚刚尝试重新安装XCode命令行工具。没有运气。

~
✓  man gcc
No manual entry for gcc

~
✗  which gcc
/usr/bin/gcc

~
✓  gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.1.0
Thread model: posix

5 个答案:

答案 0 :(得分:11)

Xcode不再安装gcc,它确实安装了clang并将其命名为gcc

usxxplayegm1:~ grady$ which gcc
/usr/bin/gcc

usxxplayegm1:~ grady$ /usr/bin/gcc --version

Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.1 (clang-503.0.38) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.0.2
Thread model: posix

您需要man clang

我认为这是一个符号链接,但是ls -l并没有将它列为符号链接,所以要么它是一个硬链接,要么是其他一些技巧。

答案 1 :(得分:1)

了解如何在MANPATH中设置.profile。而不是,例如,

export MANPATH=/opt/local/man:/usr/local/man

你应该做

export MANPATH="/opt/local/man:/usr/local/man:$MANPATH"

然后(呼吸)打开一个新的终端窗口。

这样,您的.profile不会消除(或反映旧版本)系统设置MANPATH的方式,在安装(或重新安装)Xcode时会对其进行修改。

答案 2 :(得分:1)

我使用High Sierra和g ++ 7.2端口。将MANPATH环境设置为 / opt / local / man (或 / opt / local / man / man1 ,其中 g ++。gz 已找到)不行。因此,在确保软链接 g ++。gz 指向 g ++ - mp-7.1.gz 之后(没有 g ++ - mp-7.2.gz < / strong>在man1目录中虽然g ++ 7.2是我的版本),但我总是使用命令:

man /opt/local/share/man/man1/g++.gz

永远不会失败。如果您经常使用g ++的 man 命令,则可以在 .profile 中存储别名。

答案 3 :(得分:0)

对于目前偶然发现此问题的任何人(就像我一样),我发现我需要找到我的 gcc 版本(我已与 brew 一起安装)。当 gcc --version 提供 clang 版本时,这很烦人!要找到正确的 gcc 版本,请运行

$ ls /usr/local/opt/gcc/bin | grep gcc
gcc-10
gcc-ar-10
gcc-nm-10
...

所以我有gcc-10。每当您想使用 gcc 时,只需将其替换为 gcc-10,例如man gcc-10。当然,您可以将 gcc 的别名写入 gcc-10,但这可能不是一个好主意,因为 Xcode 似乎依赖于 gcc --> clang(硬?)链接。

答案 4 :(得分:0)

这可能是旧的,并不能完全回答您的具体问题,但我发现自己在 Kali Linux 中遇到了同样的问题,我用这个命令解决了它,也许对某人有用:

apt install gcc-doc