如何将手工编译的 gcc 添加到 gcc_select

如何将手工编译的 gcc 添加到 gcc_select

在运行 Tiger 的旧 iBook G4 上,它不应升级到 Leopard,因此也无法升级到 XCode 2.5 以上,我想从 Fink 或 MacPorts 的源代码编译一些软件包,这些软件包需要 gcc 4.0。

我有一个手工编译的非常不错的 gcc 4.0,但是 Fink 和 MacPorts 用来选择 gcc 版本的 gcc_select 并不知道它们的存在,只知道 XCode 附带的 gcc 3.3。我如何让 gcc_select 确认这个编译器的存在?

回答按照 Chris 的建议,我发现gcc_select -n 4.0找到了 gcc-4.0,但没有找到 g++-4.0。安装 XCode 2.5 就可以了。

答案1

gcc_select您使用的是哪一个gcc?系统自带了一个,MacPorts 中也有一个(我不使用 Fink,也没有在他们的软件包列表中找到)。我没有安装 MacPorts,但查看其 Portfile,似乎它被设置为仅管理 MacPortsgcc安装(/opt/local/bin/gcc)。系统gcc_select管理/usr/bin/gcc

系统gcc_select来自普通的开发者工具 ( DeveloperToolsCLI.pkg)。使用它来选择gcc开发者工具安装所提供的以外的安装可能“不受支持”。它可能会起作用,但需要安装到(或至少是符号链接)各种“系统”目录中。尝试(例如)gcc_select -n 4.9看看它说了什么。


我的 iBook G4 运行 10.4 版,安装了开发工具,默认使用 gcc 4.0.1。

% gcc --version
powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5370)

此外,我的gcc-3.3构造与您的不同。

% gcc-3.3 --version
gcc-3.3 (GCC) 3.3 20030304 (Apple Computer, Inc. build 1819)

也许你安装的开发工具比较旧或不完整。根据收据,我的 gcc-4.0 来自gcc4.0.pkg。查看我的存档,我有xcode25_8m2558_developerdvd.dmg(946768492 字节),是我通过苹果开发者连接很久以前。

答案2

假设您已通过 MacPorts 安装了 gcc_select(我不确定它是否与 Apple 或 Fink 的相同),您应该能够通过导航到 来添加条目/opt/local/etc/select/gcc。查看将作为参考的基础文件,然后创建一个新文件,该文件提供手动编译的 gcc 的相应位置。例如,在我的计算机上:

$ cat base
bin/gcc
bin/cpp
bin/c++
bin/g++
bin/gcj
bin/gcov
bin/gfortran

$ cat mp-gcc43 
bin/gcc-mp-4.3
bin/cpp-mp-4.3
bin/c++-mp-4.3
bin/g++-mp-4.3
bin/gcj-mp-4.3
bin/gcov-mp-4.3
bin/gfortran-mp-4.3

我实际上还没有尝试过这个(我不是一个真正的 C 程序员,所以我害怕搞砸事情),但希望这会有所帮助!

编辑
另一件事:至少对于 python_select 来说,基础文件中未包含在选择文件中的项目将被替换为-

相关内容