Подтвердить что ты не робот

Как отображать выходные данные компилятора или пользовательские шаги сборки при создании с помощью xcode?

Как я могу увидеть результат компилятора из пользовательских шагов сборки (предварительное действие или пост-действие)?

4b9b3361

Ответ 1

Вывод предварительного действия по крайней мере появляется в system.log и отображается в Console.app.

Ответ 2

Вы найдете (и можете посмотреть во время сборки) полный вывод сборки в Log Navigator. Это самый правый значок маленьких значков чуть ниже кнопок "Выполнить" и "Создать".

Ответ 4

РЕДАКТИРОВАТЬ:, как указано в комментарии ниже, этот ответ работает только для сценариев сценариев сборки, а не для сценариев действий и последействия.


В Xcode 8 вам нужно будет выбрать свою последнюю версию в "Навигаторе → Навигаторе отчетов". В основной области вы сможете увидеть полный журнал построения, включая ваш вывод.

Выбор навигатора

Вот простое "Hello world" echo

Журнал

Ответ 5

Итак, я понял способ для обоих:

  • Показать выходные данные из сценариев предварительной сборки
  • Остановить сборку script в случае ошибки сборки

Основная идея - отправить весь вывод из события сборки в различные файлы, а затем представить этот вывод как часть целевой сборки script (которая показывает ее вывод и может быть отменена или отменена).

Предупреждающие хаки находятся рядом


Настроить конструкцию script, которая автоматически выполняет перекачку вывода в 2 разных файла... 1 для обычных журналов и один для stderr. Или используйте мой (я опубликовал в своем блоге, потому что кажется, что обнаружение кода отскакивает по сценариям оболочки.)

Затем вы должны называть это script на фазе предварительной сборки схемы следующим образом:

"${PATH_TO_LOG_SCRIPT}/log_prebuild.sh" "${PATH_TO_PREBUILD_SCRIPT_TO_EXECUTE}/scriptToExecute.sh" 2> "${SOURCE_ROOT}/build/prebuild_error.log"

Затем вам нужно настроить script до этапа компиляции на фазах целевой сборки, который проверяет наличие этих файлов, выгружает их в журналы и прерывает сборку, если произошел сбой. Или вы можете снова использовать mine

Затем постройте и скрестите пальцы:)