Долгая сборка проекта

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

krab
постоялец
Сообщения: 108
Зарегистрирован: 17.02.2010 17:23:08

Долгая сборка проекта

Сообщение krab »

По сравнению с Дельфи очень долго происходит сборка проекта. Занимает около 63 секунд. При этом на линковку тратится около 80% этого времени.

Как можно ускорить сборку проекта?

P. S. Замерил и записал действительные значения вместо тех, что приводил по-памяти.
Последний раз редактировалось krab 24.02.2010 23:54:25, всего редактировалось 3 раза.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

гы. это вы наверное с С не сравнивали :-).
Кодовая база FPC+Lazarus в несколько раз больше кодовой базы wine - а по сборка происходит на порядок быстрее.
Ускорить врядли у вас получится.
krab
постоялец
Сообщения: 108
Зарегистрирован: 17.02.2010 17:23:08

Сообщение krab »

alexs писал(а):Кодовая база FPC+Lazarus в несколько раз больше кодовой базы wine - а по сборка происходит на порядок быстрее.

Так ведь речь идет о сборке моего небольшого проекта с одной формой и пятью компонентами. Причем здесь размер кодовой базы Лазаря, которого пересобирать я пока не собираюсь?
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

я просто это к тому - что 1-5 секунд - это не задержка. например - полная пересобрка FBManager-а:

Код: Выделить всё

29105 lines compiled, 43.9 sec
krab
постоялец
Сообщения: 108
Зарегистрирован: 17.02.2010 17:23:08

Сообщение krab »

alexs писал(а):я просто это к тому - что 1-5 секунд - это не задержка. например - полная пересобрка FBManager-а:

Прилично. Тем не менее: Дельфи собирал проекты и поболее вышеописанного моего меньше чем за 1 секунду. Мне приходится проводить эксперименты из-за недостатка документации по доступу к БД. Согласитесь, что ждать 6 секунд ради того чтобы проверить как работает компонент если изменить одно из полей довольно накладно. А если таких попыток 30-40... :roll:

alexs писал(а):29105 lines compiled, 43.9 sec

Только что перепроверил. Вышеописанный мини-проект собирается целых 63 секунды. Куда там FBManager'у до него. :cry: Так что "задержка" все-таки имеет место быть.

P. S. На том же http://sqlite4fpc.yolasite.com/documentation.php все ссылки на документацию и новые версии компонент битые. На Lazarus Wiki - какие-то обрывочные наброски и схема. И все.
Последний раз редактировалось krab 24.02.2010 23:53:08, всего редактировалось 2 раза.
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

Когда речь идет о проекте более 1000 строк кода 1-5 секунд не так актуальны. Мой текущий маленький проект на чуть более 1000 строк компилируется за 5,3 секунды

sqlite4fpc уже давно является частью fpc.
krab
постоялец
Сообщения: 108
Зарегистрирован: 17.02.2010 17:23:08

Сообщение krab »

Padre_Mortius писал(а):Когда речь идет о проекте более 1000 строк кода 1-5 секунд не так актуальны. Мой текущий маленький проект на чуть более 1000 строк компилируется за 5,3 секунды
sqlite4fpc уже давно является частью fpc.

Я ошибся. 63 секунды. Не 5.
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

Какой объем проекта? какой компьютер? у меня лазарь быстрее собирается

Код: Выделить всё

221750 lines compiled, 26.7 sec 
krab
постоялец
Сообщения: 108
Зарегистрирован: 17.02.2010 17:23:08

Сообщение krab »

Padre_Mortius писал(а):Какой объем проекта?

Lazarus 0.9.28.2 FPC 2.2.4

Padre_Mortius писал(а):какой компьютер?

1.80 ГГц. 256 МБ ОЗУ
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

под виндой, на ntfs разделе IDE диска. Боюсь особой скорости вы не получите, но переход на 2.4.0 вам частично поможет
krab
постоялец
Сообщения: 108
Зарегистрирован: 17.02.2010 17:23:08

Сообщение krab »

Padre_Mortius писал(а):под виндой, на ntfs разделе IDE диска. Боюсь особой скорости вы не получите, но переход на 2.4.0 вам частично поможет

А он стабилен? В плане работы среды и откомпилированного им приложения?
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

2.4.0 в смысле стабильности - такой же релиз, как и 2.2.4.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Padre_Mortius писал(а):221750 lines compiled, 26.7 sec

А у меня Лазарь на Sempron 1.8 и 1,2 ГБ ОЗУ собирается около 6 минут. :)
Odyssey
энтузиаст
Сообщения: 580
Зарегистрирован: 29.11.2007 16:32:24

Сообщение Odyssey »

Под Win ещё можно проверить антивирус, и добавить fpc/lazarus в исключения. Когда проект собирается с отладочной информацией, в бинарник пишется довольно много данных, и антивирус со сканером по доступу может значительно замедлять компиляцию/линковку.

Плюс можно отключить отладочную информацию в свойствах проекта, при прочих равных будет собираться чуть быстрее.
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

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

Добавлено спустя 11 минут 22 секунды:
на рабочей машине (P4 3ГГц 1Гб оперативы) полная пересборка lazarus с помощью make clean all заняла 4 минуты
Ответить