Macos qmake on OS X:禁用x86/i386 arch(仅生成x86_64)
我试图让qmake生成一个makefile,它不包括CFLAGS/LFLAGS中的Macos qmake on OS X:禁用x86/i386 arch(仅生成x86_64),macos,qt,makefile,qmake,Macos,Qt,Makefile,Qmake,我试图让qmake生成一个makefile,它不包括CFLAGS/LFLAGS中的-arch i386,但到目前为止我没有成功。我尝试了以下方法: CONFIG-=x86 QMAKE\u CFLAGS-=“-arch i386” 还有一些其他的变化。唯一有效的方法是从mkspecs/features/mac中删除x86.prf,但我认为这不是一个合适的解决方案 当前命令行大致如下所示: qmake -makefile -nocache CONFIG-=release CONFIG+=Debu
-arch i386
,但到目前为止我没有成功。我尝试了以下方法:
CONFIG-=x86
QMAKE\u CFLAGS-=“-arch i386”
mkspecs/features/mac
中删除x86.prf
,但我认为这不是一个合适的解决方案
当前命令行大致如下所示:
qmake -makefile -nocache CONFIG-=release CONFIG+=Debug CONFIG+=mac
CONFIG+=CMDMAKE CONFIG-=x86 CONFIG+=x64
QMAKE_MAKEFILE=makefile_mac_Debugx64 QMAKE_LFLAGS="<...>"
QMAKE_CXXFLAGS="<..>" QMAKE_CFLAGS="<...>" QTVER=4.8.4 project.pro
qmake-makefile-nocache-CONFIG-=release-CONFIG+=Debug-CONFIG+=mac
CONFIG+=CMDMAKE CONFIG-=x86 CONFIG+=x64
QMAKE\u MAKEFILE=MAKEFILE\u mac\u Debugx64 QMAKE\u LFLAGS=“”
QMAKE_cxflags=“”QMAKE_CFLAGS=“”QTVER=4.8.4 project.pro
我相信qmake使用路径中可用的编译器。如果要使用x86_64编译器,请将x86_64编译器的PATH(可能包括LIB和LIBPATH)环境变量更改为可用,然后运行qmake。我相信qmake使用路径中可用的编译器。如果要使用x86_64编译器,请将x86_64编译器的PATH(可能包括LIB和LIBPATH)环境变量更改为可用,然后运行qmake。暂定解决方案(需要验证一些东西以确认它,但似乎可行):
1) 仅为x64单独构建Qt,即:
./configure -platform macx-g++42 -arch x64 -debug-and-release <...>
/configure-platform macx-g++42-arch x64-调试和发布
2) 从该生成中使用qmake
生成x64生成文件
显然,它仍然需要CONFIG-=x86
,但这似乎足以防止生成的makefiles中出现杂散的-arch i386
。暂定解决方案(需要验证一些东西来确认,但似乎有效):
1) 仅为x64单独构建Qt,即:
./configure -platform macx-g++42 -arch x64 -debug-and-release <...>
/configure-platform macx-g++42-arch x64-调试和发布
2) 从该生成中使用qmake
生成x64生成文件
显然,它仍然需要
CONFIG-=x86
,但这似乎足以防止生成的makefile中出现错误的-arch i386
。编译器在这两种情况下都是相同的,它可以生成x86和x64二进制文件。编译器在这两种情况下都是相同的,而且它可以生成x86和x64二进制文件qmake
是在配置阶段生成的,通过复制/符号链接某些文件或修改路径,您可以为新的qmake伪造第二次Qt安装。注意,可能不需要完整的Qt生成qmake
是在配置阶段构建的,通过复制/符号链接一些文件或修改路径,您可以为新的qmake伪造第二次Qt安装。