I Cmake mit Xcode bin mit einem C++/C "Projekt" (my_project) und eine C++/C "Ziele" zu erzeugen (eine davon ist eine binäre, der Rest sind Bibliotheken)CMake Top Level XCode Projekteigenschaften
Mein CMakeLists.txt sieht ungefähr so aus:
project(my_project)
add_subdirectory(library_projectA)
add_subdirectory(library_projectB)
add_subdirectory(binary_project)
Jeder Subdirectory hat eine CMakeLists.txt mit entweder:
add_library(library_projectA)
Oder
add_executable(binary_project)
Dies erzeugt eine Top-Ebene my_project.xcodeproj, die auf die Teilprojekte verweist.
Xcode hat diese hierarchische Vererbung von Eigenschaften (linke Felder haben Vorrang vor den richtigen Feldern):
Ziel, Projekt, Standard
Ich mag würde die „Projekt“ Felder ändern, das heißt für my_project. Dies sollte ALLE Ziele betreffen.
Ich habe dies versucht:
add_custom_target(my_project)
add_target_properties(my_project PROPERTIES XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH "NO")
Aber das funktioniert nicht.
Beachten Sie, dass, wenn ich dieses in einer der „Targets“:
add_target_properties(binary_project PROPERTIES XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH "NO")
Dann das funktioniert, aber nur für das „Target“
Wenn dies nicht klar ist, würde ich Sei froh, ein funktionierendes Beispiel zu bieten, aber das wird ein bisschen Zeit brauchen ...
Auf die aussichtslose jemand weiß von einer schnelleren Lösung für das ganze Problem, ich möchte eine saubere Installation von Xcode nicht nicht kommen Sie mit dieser (oder einer anderen) Warnung:
Projekt 'my_project' überschreibt die Architektureinstellungen. Dies wird entfernen Sie die Einstellung und Xcode automatisch wählen Architekturen basierend auf Hardware für die aktive Plattform und Bereitstellung Ziel verfügbar.
Leider dies entbindet nicht von der Warnung OP spricht und zwingt uns, das Update XCode zu verwenden schlägt vor, die aus irgendeinem Grund ein paar andere Einstellungen entfernt. – Samaursa