Введение
XCode использует настройки сборки для указания аспектов процесса сборки, сопровождаемого для генерации продукта. Установка сборки является переменной, определяющей, как выполняются задачи сборки.
Можно настроить большинство настроек сборки, перечисленных в этом документе с помощью цели и редакторов продукта в приложении XCode, конфигурационных файлах, и xcodebuild
вызовы. Однако существуют настройки сборки, которые могут быть настроены только через косвенные средние значения и настройки сборки, которые не настраиваемы. Настройки сборки, которые не настраиваемы, не имеют записи «Значения по умолчанию» в своей ссылке.
Кроме того, XCode позволяет Вам присвоить условные значения для создания настроек. Условия включают факторы сборки, такие как архитектура, для которой Вы предназначаетесь и SDK, который Вы используете. Настройки сборки с условными значениями известны как условные настройки сборки.
Этот документ предназначается для разработчиков, которые должны получить глубокое понимание того, как работает система сборки XCode.
Чтобы полностью понять, как настройки сборки цели влияют на сборку и как они касаются друг друга, этот документ использует следующие термины для описания каждой установки сборки и настроек сборки, касающихся его.
- Псевдоним
Дополнительное имя раньше идентифицировало установку сборки.
- путь к файлу пакета или путь к каталогу пакета
Строка, представляющая расположение в связанном продукте. См. Руководство по программированию Пакета для получения информации о пакетах продукта.
- Язык на базе С
C, C++, Objective C и Objective C ++.
- Основанный на С++ язык
C++ и Objective C ++.
- Компаньон
Настройки сборки, использующиеся в сочетании с относящейся установкой сборки для выполнения ее действия. При настройке относящейся установки сборки необходимо рассмотреть спецификации ее сопутствующих настроек сборки.
- Значение по умолчанию
buildtime значение установки сборки, когда нет никакой соответствующей спецификации установки для цели.
- Исполнительный элемент
Установка сборки, значение которой используется для вычислений значения по умолчанию относящейся установки сборки.
- Эффект
Установка сборки, значение по умолчанию которой вычислено с помощью значения относящейся установки сборки.
- путь к файлу или путь к каталогу
Строка, представляющая полностью определенный путь файловой системы. Когда путь содержит пробелы, путь должен быть окружен единственными кавычками (
'
) или удвойте кавычки ("
), или пробелов нужно оставить с наклонной чертой влево (\
).- имя файла
Строка, которая может содержать числа, буквы, тире (
-
), периоды (.
) или подчеркивания (_
).- идентификатор
Строка, которая может содержать цифры, буквы, тире (
-
), знаки «плюс» (+
), и подчеркивания (_
).- установленный продукт
Продукт, сконфигурированный для распределения его пользователям.
- установленный каталог продукта
Каталог, представляющий корневой каталог (
/
) на компьютере пользователя.- число
Строка, которая может содержать только цифры.
- числовой идентификатор
Строка, которая может содержать числа и периоды.
- спецификация опции
Строка, которая может содержать символы идентификатор, может содержать, а также располагает с интервалами. Когда спецификация опции содержит пробелы, она должна быть окружена единственными кавычками (
'
) или удвойте кавычки ("
).- Предпосылка
Выражение, которое должно быть истиной для относящейся установки сборки для вступления в силу.
- Предпосылка для
Относящееся значение установки сборки позволяет или подавляет поведение, указанное отнесенной установкой сборки.
- путь к файлу проекта или путь каталога проекта
Строка, представляющая расположение в каталоге проекта.
- Связанный с
Установка сборки с концептуальным отношением с относящейся установкой сборки за исключением предпосылок, компаньонов, эффектов и исполнительных элементов.
- универсальный идентификатор типа (UTI)
Строка, указывающая тип. Эта строка использует обратный DNS (Система доменных имен) для однозначного определения элемента в способе, которым могут распознать другие системы. См. Универсальный Обзор Идентификаторов типов для подробных данных об универсальных идентификаторах типов.
- Значение
Значение установки сборки во время изготовления. Это - не обязательно спецификация установки сборки. Посмотрите Настройки Сборки для подробных данных.
Этот документ предполагает, что весь XCode SDKs установлен на Вашем компьютере.
При разработке продуктов с помощью C++ Вы, возможно, должны настроить эти настройки сборки в своих целях:
GCC_WARN_EFFECTIVE_CPLUSPLUS_VIOLATIONS (эффективное нарушение C++)
GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS (скрытые виртуальные функции)
LINKER_DISPLAYS_MANGLED_NAMES (выводят на экран скорректированные имена),
STANDARD_C_PLUS_PLUS_LIBRARY_TYPE (тип библиотеки стандарта C++)
Используйте эти настройки сборки для настройки опыта отладки:
GCC_GENERATE_DEBUGGING_SYMBOLS (генерируют отладочные символы),
PRESERVE_DEAD_CODE_INITS_AND_TERMS (Не делают Мертвой Полосы Inits и условия),
Следующие разделы описывают настройки сборки, которые можно использовать, чтобы настроить сборку или запросить о конфигурация сборки во время изготовления.