web-dev-qa-db-fra.com

Le fichier objet a été construit pour une version OSX plus récente que d'être liée

J'obtiens cette erreur pour la bibliothèque C++ que j'utilise. Il utilise GNU Automake pour la construction. Quel (s) indicateur (s) dois-je fournir pour la commande make pour abaisser la plate-forme de construction cible pour éviter de voir cet avertissement dans le projet Xcode où je ' m essayant de lier contre la bibliothèque?

14
peetonn

Vous devez définir l'indicateur du compilateur -mmacosx-version-min au numéro de version du SDK sur lequel vous souhaitez construire. Je n'utilise pas automake, mais dans cmake vous définiriez la variable CMAKE_OSX_DEPLOYMENT_TARGET, et dans qmake vous définiriez la variable QMAKE_MACOSX_DEPLOYMENT_TARGET.

7
cbrnr

Comme l'a répondu cbrnr, vous devez utiliser l'indicateur de compilateur -mmacosx-version-min. Pour passer l'indicateur du compilateur via make, vous pouvez utiliser la variable d'environnement CXXFLAGS:

make CXXFLAGS="-mmacosx-version-min=10.10" <target or other make params>
6
MateuszL