Как уменьшиться, время изготовления / ускоряет время компиляции в XCode?

Сошлитесь на таблицу стилей CSS в своем документе HTML или поместите информацию о стилях в верхнюю часть самого документа HTML

68
задан Cœur 17 February 2019 в 18:14
поделиться

4 ответа

Часто самое большое, что вы можете сделать, - это контролировать включение файлов заголовков.

Включение «лишних» файлов заголовков в исходный код значительно замедляет компиляцию. Это также приводит к увеличению времени, необходимого для проверки зависимостей.

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

54
ответ дан 24 November 2019 в 14:12
поделиться

Лично я переключил компилятор на LLVM-Clang для своих проектов разработки Mac и заметил резкое сокращение времени сборки. Также есть компилятор LLVM-GCC, но я не уверен, что это поможет со временем сборки, но вы тоже можете попробовать это, если LLVM-Clang не работает для компиляции приложений для iPhone.

Я не уверен на 100%, что LLVM поддерживается для разработки на iPhone, но я помню, как читал в ленте новостей, что это так. Это не оптимизация, которую вы можете реализовать в своем коде, но попробовать стоит!

17
ответ дан 24 November 2019 в 14:12
поделиться

Вы упомянули об использовании статических библиотек для наиболее часто используемых файлов для предотвращения компиляции. Вы можете добиться чего-то подобного, поместив заголовки в свой код, который он часто используется, но не в ваших статических библиотеках в предварительно скомпилированном заголовке. По крайней мере, они будут скомпилированы только один раз.

Следует проявлять осторожность, чтобы избежать проблем, если в вашем проекте используется несколько типов компиляции (например, Obj-C, Obj-C ++, C ++).

2
ответ дан 24 November 2019 в 14:12
поделиться

Простой ответ: добавьте еще одну машину с Xcode в вашу локальную сеть. Xcode включает distcc для выполнения распределенных компиляций. Он даже может использовать Bonjour для поиска других хостов сборки, что значительно упрощает процесс настройки. Для больших сборок распространение может увеличить скорость, которая почти линейно пропорциональна количеству машин сборки (2 машины занимают половину времени, три - третью и так далее).

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

Изменить: К сожалению, похоже, что Apple удалила эту функцию в Xcode 4.3: http://lists.apple.com/archives/xcode-users/2012/Mar/msg00048. html

Xcode 5 имеет серверную версию, которая может выполнять CI, но я сомневаюсь, что это принесет какую-либо пользу для специальных сборок для разработчиков. Однако есть некоторые необъявленные функции, которые должны резко сократить время сборки.

11
ответ дан 24 November 2019 в 14:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: