[devel] gcc -m32 не работает в x86_64
Anton Farygin
=?iso-8859-1?q?rider_=CE=C1_altlinux=2Ecom?=
Чт Окт 5 13:00:39 MSD 2006
Dmitry V. Levin wrote:
> On Thu, Oct 05, 2006 at 12:33:22AM +0400, Vitaly Lipatov wrote:
>> $ gcc -m32 test.c
>> /usr/bin/ld: skipping
>> incompatible /usr/lib64/gcc/x86_64-alt-linux/4.1.1/./libgcc.a
>> when searching for -lgcc
>> /usr/bin/ld: cannot find -lgcc
>> collect2: ld returned 1 exit status
>>
>> Пытался собрать wine и вот что получил для начала.
>> Как нужно поступить, если нужно собрать 32-битную программу на
>> 64-битной машине?
>
> Я в таких случаях (да и в других случаях, когда надо что-то собрать)
> использую hasher; в данном случае setarch i686 hasher --apt-conf=...
Дима, ты не понял вопроса.
Я тоже с этим столкнулся.. задача - собрать 32-х разрядное приложения
для x86_64. Зачем это нужно ? Понятно зачем.. что бы работало.
Примеры таких приложений:
grub
wine
пускалка плагинов для браузеров (позволяющая запускать 32-х разрядные
плагины в собранных под x86_64 плагинах).
...
и т.д.
Что для этого нужно:
- зафиксить kernel-headers
- собрать gcc с поддержкой -m32
- собрать glibc-x86-compat для x86_64
- собрать все необходимые библиотеки для x86_64 в режиме compat с i586.
И если мы планируем использовать grub на x86_64, то это придётся сделать
до фриза. Во всяком случае я сходу не смог собрать grub для x86_64 без -m32
Rgds,
Rider
Подробная информация о списке рассылки Devel