Macos QT创建者添加了-Xarch

Macos QT创建者添加了-Xarch,macos,qt-creator,gcc4.8,Macos,Qt Creator,Gcc4.8,我使用QtCreator和一个旧的GCC,现在我更新到了4.8版本。 但是GCC4.8告诉我,QtCreator添加了一个-Xarch_x86_64选项 g++: error: unrecognized command line option '-Xarch_x86_64' 有没有办法删除此选项? 我试着用 CONFIG -= x86_64 ppc64 x86 ppc 64 arch_x86_64 -arch -Xarch_x86_64 QMAKE_CXXFLAGS += -std=c++11

我使用QtCreator和一个旧的GCC,现在我更新到了4.8版本。 但是GCC4.8告诉我,QtCreator添加了一个-Xarch_x86_64选项

g++: error: unrecognized command line option '-Xarch_x86_64'
有没有办法删除此选项? 我试着用

CONFIG -= x86_64 ppc64 x86 ppc 64 arch_x86_64 -arch -Xarch_x86_64
QMAKE_CXXFLAGS += -std=c++11 -v
QMAKE_CXXFLAGS += -std=c++0x
QMAKE_CXXFLAGS -= x86_64 ppc64 x86 ppc 64 arch_x86_64 -arch -Xarch_x86_64
QMAKE_CXXFLAGS += -mmacosx-version-min=10.7
QMAKE_LFLAGS += -mmacosx-version-min=10.7
QMAKE_LFLAGS -= x86_64 ppc64 x86 ppc 64 arch_x86_64 -arch -Xarch_x86_64
但到目前为止,一切都没有发生

注意:我使用的是上一个QtCreator版本,使用端口下载了一个GCC,并且我更改了工具包上的编译器


关于

我使用删除了所有引用

QMAKE_CFLAGS_PPC_64     -= -arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5
QMAKE_OBJECTIVE_CFLAGS_PPC_64  -= -arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5
QMAKE_CFLAGS_X86_64     -= -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5
QMAKE_OBJECTIVE_CFLAGS_X86_64  -= -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5
QMAKE_CXXFLAGS_PPC_64   -= -arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5
QMAKE_CXXFLAGS_X86_64   -= -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5
QMAKE_LFLAGS_PPC_64     -= -arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5
QMAKE_LFLAGS_X86_64     -= -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5

它解决了我的问题

解决此问题的另一种方法是编辑特定qt版本和特定目标版本的编译器配置文件

在我的例子中,这个conf文件是:

/usr/local/Qt4.8/mkspecs/common/g++-macx.conf
这些变化是:

QMAKE_CFLAGS_X86_64 += -Xarch_x86_64 -mmacosx-version-min=10.5
QMAKE_CFLAGS_PPC_64 += -Xarch_ppc64 -mmacosx-version-min=10.5

请参阅opencv网站问答中纳托费雷拉的帖子。这也提到了这个文件


如果您知道有关此Qt和GCC配置文件的其他信息,请添加注释。

使用通过MacPorts安装的GCC时,我遇到了相同的问题(测试了几个版本,直到gcc5)。我的解决方案是使用XCode命令行工具提供的
g++
。我卸载了所有MacPorts GCC版本。下面是运行的
g++
命令的详细版本

$ g++ --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix

为我工作!考虑接受这个答案,它可能会帮助其他人找到PAS.你使用哪一个编译器?G++-MP-4.8。使用端口下载它。如果您需要编译libstdcxx,请不要忘记更新您的Xcode。我已经用brew安装了gcc48,但是如果我在终端中打印
gcc
g++
,它将找不到二进制文件。。我必须手动创建一个软链接。。但是它给了我一个错误
尝试执行'cc1plus'时出错:execvp:没有这样的文件或目录
您可以使用QMAKE_CXX=/path/to/g++-mp-4.8强制使用它
$ g++ --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix