Spec-Zone.ru › CMake 3.29

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–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.29/prop_tgt/XCODE_LINK_BUILD_PHASE_MODE.html

Spec-Zone.ru

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