对象文件是为比链接的OSX版本更新的OSX版本生成的 我正在使用C++库中的这个错误。它使用GNU Automake进行建筑。我应该为make命令提供哪些标志来降低目标构建平台,以避免在我试图链接库的Xcode项目中看到此警告?

对象文件是为比链接的OSX版本更新的OSX版本生成的 我正在使用C++库中的这个错误。它使用GNU Automake进行建筑。我应该为make命令提供哪些标志来降低目标构建平台,以避免在我试图链接库的Xcode项目中看到此警告?,c++,xcode,macos,gnu-make,C++,Xcode,Macos,Gnu Make,您需要将编译器标志-mmacox version min设置为要构建的SDK的版本号。我不使用automake,但在cmake中设置变量cmake\u OSX\u DEPLOYMENT\u TARGET,在qmake中设置变量qmake\u MACOSX\u DEPLOYMENT\u TARGET,正如cbrnr回答的那样,您必须使用-mmacox version-min编译器标志。要通过make传递编译器标志,可以使用CXXFLAGS环境变量: make CXXFLAGS="-mmacosx-

您需要将编译器标志
-mmacox version min
设置为要构建的SDK的版本号。我不使用
automake
,但在
cmake
中设置变量
cmake\u OSX\u DEPLOYMENT\u TARGET
,在
qmake
中设置变量
qmake\u MACOSX\u DEPLOYMENT\u TARGET
,正如cbrnr回答的那样,您必须使用-mmacox version-min编译器标志。要通过make传递编译器标志,可以使用CXXFLAGS环境变量:

make CXXFLAGS="-mmacosx-version-min=10.10" <target or other make params>
make cxflags=“-mmacosx版本最小值=10.10”

对于许多软件包使用
/configure
时,
macosx version min
设置默认为特定的操作系统版本-如果该操作系统版本低于编译链接库的
macosx version min
版本,则可能会出现上述警告消息。但是,这可以通过在运行configure之前设置
MACOSX\u DEPLOYMENT\u TARGET
环境变量来控制,例如:

MACOSX_DEPLOYMENT_TARGET=10.14 ./configure

如果QtCreator存在此问题,只需将
QMAKE\u MACOSX\u DEPLOYMENT\u TARGET=xx.xx
添加到项目文件中,其中xx.xx是用于编译库的SDK的版本号