Spec-Zone.ru › CMake 3.23

XCODE_LINK_BUILD_PHASE_MODE

Новое в версии 3.19.

При использовании генератора Xcode, библиотеки, которые нужно связать, будут указаны в файле проекта Xcode, используя либо этап сборки «Связать двоичный файл с библиотеками», либо напрямую в качестве флагов компоновщика. Первый вариант позволяет Xcode управлять путями сборки, что может потребоваться при создании архивов Xcode, так как он может использовать разные пути сборки по сравнению с обычной сборкой.

Данный параметр управляет использованием этапа сборки «Связать двоичный файл с библиотеками» для целевого объекта, представляющего собой пакет приложения, исполняемый файл, общую библиотеку, общую фреймворк или библиотеку модуля.

Возможные значения:

  • NONE Библиотеки будут связаны, указав флаги компоновщика напрямую.
  • BUILT_ONLY Этап сборки «Связать двоичный файл с библиотеками» будет использован для связи с другим целевым объектом при следующих условиях:

    • Целевой объект, с которым происходит связь, является обычным целевым объектом библиотеки, не импортированной и не являющейся библиотекой интерфейса.
    • Директория вывода целевого объекта, который собирается, не изменена с её значения по умолчанию (см. RUNTIME_OUTPUT_DIRECTORY и LIBRARY_OUTPUT_DIRECTORY).
  • KNOWN_LOCATION Этап сборки «Связать двоичный файл с библиотеками» будет использован для связи с другим целевым объектом при тех же условиях, что и с BUILT_ONLY, а также:

    • Импортированные библиотечные целевые объекты, за исключением тех, которые имеют тип UNKNOWN.
    • Любые библиотеки, не являющиеся целевыми объектами, указанные напрямую с путём.

Во всех остальных случаях библиотеки будут связаны, указав флаги компоновщика напрямую.

Предупреждение

Библиотеки, связанные с помощью «Связать двоичный файл с библиотеками», связываются после тех, что связаны через обычные флаги компоновщика. Этот порядок следует учитывать при наличии различных статических библиотек, содержащих символы с одинаковым именем, так как первые из них будут иметь приоритет над последними.

Предупреждение

Если две или более директории содержат библиотеки с идентичными именами файлов и некоторые библиотеки связаны из этих директорий, поиск пути поиска библиотек завершится связыванием библиотек из первой директории. Это известное ограничение Xcode.

Этот параметр инициализируется значением переменной CMAKE_XCODE_LINK_BUILD_PHASE_MODE, если она установлена при создании целевого объекта.

© 2000–2022 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.23/prop_tgt/XCODE_LINK_BUILD_PHASE_MODE.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API