我正在开发一个需要 GCC 4.7 或更高版本的 C++ 项目。当我在终端中调用命令行时,它工作正常,但是当我在 Emacs 中make
运行时它失败了。M-x compile
当我gcc --version
在命令行上运行时,它说
gcc (MacPorts gcc47 4.7.3_0+universal) 4.7.3
但是当我gcc --version
从 Emacs 中的 shell 运行时,它说
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
我做了更多调查,发现 Emacs 和 Terminal 之间的另一个区别。我在终端上使用 MacPorts 安装了 GCC 4.7;但是当我port install foo
在 Emacs 中运行时,它会显示port: command not found
.
为什么会发生这种情况,如何让 Emacs 使用与终端相同版本的 GCC?