[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Кросскомпиляция на машине x86_64 в i386



On 2013.10.17 at 23:29:49 +0400, Dmitrii Kashin wrote:

> Для того, чтобы собирать в чруте пакеты не нужно иметь 32-битное
> ядро. Более того, никаким другим способом Вы не сможете иметь в одной
> системе одновременно установленными 32- и 64-разрядные версии GCC.

Если под "64-разрядной верией gcc" понимать "gcc, который умеет
генерировать 64-разрядные программы" то это неверно. 

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

Вообще обычно различия между 32- и 64-битным кодом родным, для данного
процессора, обеспечиваются ключиком -m32 или -m64. 

Но есть еще ключик -b.

Было дело у меня на рабочей машине стояли gcc с целевыми архитектурами
i386-msdosdjgpp, i586-mingw32mvsvc, arm-gnu-linux, armel-linux-gnu,
mips-linux-gnu и mipsel-linux-gnu. И все прекрасно сосуществоали без
всяких chroot-ов и библиотеки правильные находили.

И библиотеки эти были поставлены из дебиановских пакетов. Некоторые - из
дистрибутива, некоторые с emdebian.org. некоторые - из дистрибутивов для
соответствующих архитектур с помощью dpkg-cross, а некоторые - сам
собирал. 



Reply to: