On Thu, Dec 21, 2006 at 03:10:21PM +0300, Sergey Vlasov wrote: > On Thu, Dec 21, 2006 at 02:30:14PM +0300, Dmitry V. Levin wrote: > > On Thu, Dec 21, 2006 at 01:13:06PM +0300, Anton Farygin wrote: > > > Epiphanov Sergei wrote: > > > > В сообщении от Wednesday 20 December 2006 11:09 Anton Farygin написал(a): > > > >> Но вот основная задача - сборка его на x86_64 пока не выполнима по > > > >> причине сломанного флага -m32 в нашей сборочной среде для x86_64. > > > > > > > > А можно хотя бы в двух словах, почему сломано? Нагуглить ответа я не смог. > > > > > > > Это уже обсуждалось. Потому что не собрано до конца: > > > 1) glibckernheaders должны включать заголовки для x86 на x86_64 > > > 2) glibc должен быть собран biarch > > > 3) gcc наверное тоже надо как-то этак собрать > > > > Я бы сказал что не сломано а не реализовано: > > - Каждый пакет с .h-файлами должен содержать специальную магию (в каждом > > файле) для того чтобы эти заголовки можно было использовать для biarch. > > Видимо, всё-таки не каждый, а содержащий arch-specific заголовки, каковых > существенно меньше Их несущественно меньше. Для такого пакета как grub особенно. > (помимо заголовков ядра (которые, кстати, в последних > kernel-headers-* уже biarch) У нас ещё нет последних kernel-headers по умолчанию (вместо glibc-kernheaders и пр.). > > - В glibc/gcc нужно специальным образом раскладывать файлы. > > Как я понял, в gcc это получается почти автоматически при наличии во время > его сборки правильной glibc. Нет, помимо 32-битного glibc нужны 32-битные куски gcc. > Собственно, нашему gcc сейчас не хватает > только файлов 32/libgcc.* и соответствующего куска в specs (правда, я не > смотрел, что должно происходить в районе всяких libstdc++ и прочих ещё > менее нужных частей). И crt*; грубо говоря, нужен весь /usr/lib/gcc/i586-alt-linux/4.1.1/ > > - В rpm нужно бэкпортить код для поддержки установки одноимённых пакетов > > под разные архитектуры. > > Либо делать отдельные пакеты 32bit-* для нужных библиотек, которые > собирать только для x86_64. В SuSE так делают, кажется. > > Думаю что проще исправить сборку любого пакета чем реализовывать всё это. > > Как предполагается исправлять сборку пакета, который активно использует, > например, i386 asm (тот же grub)? Собирать эти куски нативно на i386 и потом использовать. -- ldv