将 GCC 4.8 安装到 Xcode 4.5、Xcode 4.6、Xcode 5.0:
对于没有安装 GCC 4.8 的人:
安装新版本的自制软件
你可以在网上找到安装方法
将您的 brew 更新到最新版本 ($brew update)
1.$brew install gcc48 --enable-all-languages
(可能应该通过brew安装mpc、mpfr和gmp,http://solarianprogrammer.com/2013/06/11/compiling-gcc-mac-os-x/)
2.$brew link gcc48
3.备份g++,gpp,c++,cpp,c++ in /usr/bin/
4.[可选步骤]:
别名 g++-4.8,gpp-4.8,c++-4.8,cpp-4.8,c++-4.8
来自/usr/local/Cellar/gcc48/4.8.2/bin/g++
致/usr/bin/
[未安装gcc的开发者的以上4个步骤]
[@“Donny P”:以上4个步骤可以跳过]
5.制作插件
1)下载a plugin of GCC 4.5 for Xcode
2)每“4.5”改成“4.8”,“4_5”改成“4_8”,文件名,文件内容,
文件GCC 4.5.xcspec中的“com.apple.compilers.gcc.headers.4_2”除外。
您可以保持English.lproj中的内容不变,并删除Japanese.lproj。
3)在文件GCC 4.8.xcspec
(希望你已经把GCC 4.5.xcspec的文件名改成了GCC 4.8.xcspec)
更改ExecPath = "...”;
到ExecPath = "/usr/local/bin/gcc-4.8"(@"Donny P": 你可以改成"/usr/local/bin/gcc-4.7")
或ExecPath = "/usr/local/Cellar/gcc48/4.8.2/bin/gcc-4.8"(对于通过 brew 安装 gcc-4.8 的人)
或ExecPath = "/usr/bin/gcc"(针对完成第 4 步的人。)
4)删除文件GCC 4.8.xcspec中的“-Wshorten-64-to-32”部分
{
Name = "GCC_WARN_64_TO_32_BIT_CONVERSION";
Type = Boolean;
DefaultValue = NO;
CommandLineArgs = {
YES = (
"-Wshorten-64-to-32",
);
NO = ();
};
AppearsAfter = "GCC_WARN_PROTOTYPE_CONVERSION";
Category = Warnings;
CommonOption = NO;
DisplayName = "Implicit Conversion to 32 Bit Type";
Description = "Warn if a value is implicitly converted from a 64 bit type to a 32 bit type.
[GCC_WARN_64_TO_32_BIT_CONVERSION, -Wshorten-64-to-32]";
}
6.将编辑后的GCC 4.8.xcplugin放入
/Applications/Xcode.app/Contents/Plugins/Xcode3Core.ideplugin/Contents/SharedSupport/Developer/Library/Xcode/Plug-ins/
7.重新打开 Xcode。
现在,新插件已经为您准备好了。您可以在项目的“Build Settings”的“Compiler for C/C++/Objective-C”中看到新的 GCC 编译器插件
8.更改 Xcode 项目中的构建设置
1)在Xcode的project和target设置中
将“C/C++/Objective-C 编译器”更改为“GCC 4.8”
2)在project设置中
删除“CLANG_CXX_LIBRARY”行