Невозможно получить доступ к SRCROOT в сценариях действий предварительной сборки схемы Xcode 4 - PullRequest
1 голос
/ 06 июня 2011

Некоторые переменные, которые были доступны для запуска сценариев в Xcode 3, больше не доступны для предварительной сборки действий сценария в Xcode 4?

Сценарий

PLIST_FILE="$SRCROOT/$INFOPLIST_FILE"
echo "${PLIST_FILE}"

выдает только «/» в качестве вывода: ни SRCROOT, ни INFOPLIST_FILE, похоже, не определены. Есть ли у них новые имена в Xcode 4; это ошибка?

Ответы [ 4 ]

13 голосов
/ 06 июня 2011

Обновление: Xcode 4.1 наконец-то решает эту проблему. Новое всплывающее окно в редакторе сценариев позволяет вам выбрать цель, на которой Xcode базирует переменные среды, которые он делает доступными для вашего сценария (вы все равно можете выбрать «нет» ... опция сомнительной полезности).

Старый пост О 4,0 подписках

Это потому, что по какой-то причине переменные среды XCode недоступны в сценариях до и после действия в текущей версии.

Никто не знает, почему (или как они полезны без envvars).

Быстрый тест - добавьте это в скрипт:

printenv ~/Desktop/EnvVars.txt

... затем откройте текстовый файл и засвидетельствуйте разочарование. : -)

1 голос
/ 29 августа 2013

Попробуйте это:
cd $ {SRCROOT}
открыто.

у меня это работает.

0 голосов
/ 28 ноября 2016

В Редактировать схему -> Построение -> Предварительные действия , убедитесь, что одна из целей выбрана для "Предоставить настройки сборки" (не нет * 1006) *) опция.

cp SOME_PATH/build.gradle "${SRCROOT}/build.gradle"
0 голосов
/ 05 августа 2011

"$ SRCROOT / $ INFOPLIST_FILE" отлично работает для меня в Xcode 4.1 Build 4B110 на Mac OSX Lion.

...