On Wed, Oct 19, 2005 at 11:56:39PM +0300, Eugene Ostapets wrote: > > Мне сложно закачать 17M в Daedalus. В случае с Sisyphus проще из-за > > доступа в офисную сеть. > Хм... nosrc.rpm и я залью в дедалус?:) Не торопите события. :) Я как раз понял, что делать с линкером. При использовании `fpc -XX' (smart linking) ситуация такая: для линковки создается linker script (link.res) и отдатся линкеру /usr/bin/ld. В этом скрипте перечислены все *.a файлы, соответствующие используемым юнитам (рекурсивно). Для компоновки fpc/compiler/ppc386 используется около 200 *.a файлов, для fpc/ide/fp -- ещё больше. В каждом *.a файле находится порядочное количество *.o файлов, по одному на линкуемый символ. То есть в некоторых довольно типичных ситуациях при использовании smart linking линкеру нужно слинковать несколько тысяч файлов. Линкеру от этого натурально сносит крышу: он отжирает всю виртуальную память, и ядро его убивает (хорошо если его). Опция --no-keep-memory не помогает. В binutils >= 1:2.15.92 есть новая опция --reduce-memory-overheads. Вместе с --no-keep-memory получается приемлемый результат: для линковки ppc386 используется 108M, для линковки fp используется 177M. Реально RSS требуется меньше, так что ppc386 и fp удается скомпоновать даже на машинке с 128M, при активной поддержке kswapd. Но всё же это большой успех, потому что это разница между "работает" и "не работает". Теперь lazarus, вероятно, удастся собрать вместе с "-CX -XX". > > М-м... Берите. Основная задача -- lazarus должен собирать кроссом для > > win32 так же хорошо, как для linux. Тогда его существование оправдано. > > То есть в этом может быть одно из его преимуществ. Там ещё нужно > > решить, собирать ли сам lazarus c gtk или c gtk2. Для этого его нужно > > поюзать. Ну, написать какой-нибудь тетрис, чтобы пройтись по всем > > граблям. > А зачем кроссовая среда? Я еще понимаю кроссовый компилер... Ну а зачем вообще Delphi нужен? И чем lazarus может быть лучше Delphi? Важно уметь собирать кроссом "от и до", не используя винды и не имея нативных виндовых development tools.