我正在尝试在Objective-c ++程序中使用OpenMP。
不幸的是llvm-gcc 4.2在使用OpenMP时似乎有严重的错误。根据我的研究,最好的解决方案应该是使用gcc 4.8。
我已经下载了gcc 4.8的预建版本。我的问题是:如何将新编译器与Xcode集成,以便我可以直接在Xcode的Build Settings中选择它?
或者,是否有简单方式我可以使用gcc4.8编译我的项目?我有不同的文件和.xib,我真的不想手工编译所有文件。
我正在使用MacOS 10.8.3和Xcode 4.5.1(虽然我认为所有Xcode 4.x的程序应该相同)。
答案 0 :(得分:1)
在Xcode中,在项目中,选择项目(文件的根目录,带蓝色图标)。 在打开的视图中,再次选择项目,然后选择“构建设置”选项卡。
在此处搜索条目“Compiler for C / C ++ / Objective-C(表格视图上方有一个搜索框)。编辑值并设置自定义路径(通过选择”其他...“)到您下载的gcc
答案 1 :(得分:1)
将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. /usr/bin/
中的备份g ++,gpp,c ++,cpp,c ++
4. [可选步骤]:
alias 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个步骤]
5.make插件
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"
或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.reopen 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”行