Xcode 4: Проект не соблюдает $ (унаследованный) параметр сборки в рабочей области?

Сегодня мой день страданий от Xcode 4, рабочих пространств и проектов.

у меня естьрабочая среда с несколькими библиотеками с открытым исходным кодом (openssl, sqlcipher и несколько других). В рабочей области есть один «Главный»проект который производит EXE в качестве цели. Проекты с открытым исходным кодом являются «подпроектами» или «дочерними проектами» для «Основного» проекта. Это выглядит примерно так:

Main Project
  +- OpenSSL Project
  +- SqlCipher Project
  ...

В проекте «Основной» в разделе «Проект» (а не «Цель») я установил флажки препроцессора и предупреждения.настройки сборки, Например, макросами препроцессора отладки являются «DEBUG = 1 SQLITE_DEBUG = 1 SQLITE_HAS_CODEC = 1» (без кавычек). И наоборот, макросы препроцессора выпуска имеют значение «NDEBUG = 1 NS_BLOCK_ASSERTIONS = 1 SQLITE_HAS_CODEC = 1».

В основной «Target» (не «Project») и во всех подпроектах («Project» и «Targets») я гарантирую, что нет переопределений параметров сборки для конкретного проекта (выделив «Макросы препроцессора» и нажав COMMAND + DELETE) , Затем я гарантирую, что поле установлено в «$ (наследуется)» (без кавычек).

И вот, дочерние проекты не чтят "$ (наследуется)". Когда я смотрю на командную строку, выпущенную XCode, ничего не присутствует, что должно присутствовать из GCC_PREPROCESSOR_DEFINITIONS. Например, файлы проекта SqlCipher не компилируются с унаследованными настройками сборки из Main.

Я думал, что проблема может быть похожа наМакросы препроцессора игнорируются в настройках проекта XCode, но не в целевых настройках, но я не могу получить те же [положительные] результаты.

Может ли кто-нибудь объяснить мне, как заставить дочерние проекты соблюдать "$ (наследуется)"? Когда я пытаюсь прочитать документацию Apple, меня все больше смущает то, что я читаю, и поведение, которое я наблюдаю. Пожалуйста, объясните это так, как если бы вы разговаривали с ребенком.

Ответы на вопрос(1)

Ваш ответ на вопрос