Почему в документации XCode говорится, что $ (PROJECT_DIR) / build используется в качестве значения по умолчанию для создания пути продуктов сборки, тогда как это явно не так? - PullRequest
0 голосов
/ 11 января 2020

Документация XCode 10 "Справочник по настройкам сборки" определяет ключевое слово "SYM ROOT" следующим образом:

Путь продуктов сборки (SYM ROOT)

Путь, на котором будут размещены все продукты при выполнении сборки. Как правило, этот путь не установлен для цели, но установлен для проекта или для пользователя. По умолчанию это значение равно $(PROJECT_DIR)/build.

. В документации не дается определения того, что означает «PROJECT_DIR», однако я понимаю, что это означает каталог, в котором живет .xcodeproj, целью которого является ты строишь.

Но вот мое заблуждение: после того, как я выполнил операцию сборки после установки macOS и XCode fre sh, такой каталог с именем build не появится нигде в том же каталоге, что и мой проект.

Вместо этого у нас есть DerivedData, похороненный на двух уровнях глубоко внутри скрытой папки с именем Library в домашнем каталоге моего пользователя. А внутри DerivedData нет такой папки, как DerivedData/build/ ... вместо этого нам нужно go еще три слоя глубиной, чтобы найти какие-либо продукты сборки, спрятанные в DerivedData/MyProjectName/Build/Products/.

Ясно PROJECT_DIR/build! = DerivedData/MyProjectName/Build/Products/, и даже если вы включите опцию «Относительный» путь в XCode> Предпочтения> Местоположения> Производные данные, вы все равно не получите PROJECT_DIR/build.

Итак ... может кто-нибудь объяснить мне, почему в документации XCode говорится об этом?

Например, "построить" специальное ключевое слово, которое не требует $() вокруг него, как другие ключевые слова, и которое волшебным образом превращается в путь к вашим созданным продуктам? Или эта документация просто никем не поддерживается, и долгое время назад go во времена NEXTSTEP это была действительно правильная документация, но за прошедшие десятилетия она вышла из-под контроля?

...