Почему PATH недоступен для пользовательских сценариев оболочки, выполняемых из Xcode? - PullRequest
6 голосов
/ 26 мая 2011

Я наблюдал, что в пользовательских сценариях оболочки, выполняемых XCode в фазе выполнения сценариев, не заданы переменные среды. У них есть тонны других переменных, но не PATH.

Возможно ли решить эту проблему, как? Я просто хочу запустить инструмент, который должен находиться в пути, и я не хочу начинать проверку возможных местоположений вручную.

Ответы [ 3 ]

9 голосов
/ 12 июля 2012

Вы можете явно указать пользователей .bashrc, .profile и т. Д. Или еще лучше запустить что-то вроде

PATH=$(bash -l -c 'echo $PATH')

, что не приведет к загрязнению других переменных.

4 голосов
/ 21 августа 2012

Ответ Ивана Андруса привел меня к тому, что я считаю более чистым и более полным методом: полностью запустить скрипт в новой оболочке. Например:

bash -l -c "./configure --prefix=${DERIVED_FILE_DIR} && make && make install"

Я использую двойные кавычки для расширения переменной. Рекомендуется расширить любые переменные, которые вам нужны, потому что любые существующие переменные могут быть перезаписаны теми, которые созданы для новой среды.

1 голос
/ 26 мая 2011

Возможно, вы захотите подписаться на эту тему: Установка переменных окружения в OS X? Удачи с environment.plist.

...