Вы уверены, что используете правильную настройку кросс-компиляции? Должно быть
CBUILD = CHOST = x86_64-pc-linux-gnu
CTARGET = i386-pc-linux-gnu
когда вы запускаете сборку на x86_64
, для компилятора на x86_64
, который генерирует код для i386
.
Если вы использовали CHOST = i386-pc-linux-gnu
, вы будете пытаться сгенерировать 32-разрядные двоичные файлы, которые необходимо будет связать с 32-разрядным libc
. Что хорошо, если у вас уже есть 32-битный libc
, но, похоже, у вас его нет.
т.е.
$ tar xvjf gcc-*.tar.bz2
$ cd gcc-*/
$ mkdir build
$ cd build
$ ../configure --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --target=i386-pc-linux-gnu