Кросс-компиляция gcc - PullRequest
       8

Кросс-компиляция gcc

4 голосов
/ 16 августа 2010

Я следую инструкциям здесь для кросс-компиляции GCC.Я на маке.Когда я запускаю эту команду из исходной папки gcc: ./configure --target=i586-elf --prefix=/usr/local/cross --disable-nls --without-headers --enable-languages=c,ada,c++,fortran,java,objc,obj-c++,treelang я получаю эту ошибку: configure: error: GMP 4.1 and MPFR 2.2.1 or newer versions required by fortran.Когда я изменяю команду на это (я не могу скомпилировать GMP): ./configure --target=i586-elf --prefix=/usr/local/cross --disable-nls --without-headers --enable-languages=c,ada,c++,java,objc,obj-c++,treelang я получаю эту ошибку:

The following requested languages could not be built: ada
Recognised languages are: c,ada,c++,fortran,java,objc,obj-c++,treelang

, которая не имеет смысла для меня, потому что она говорит, что ada распознается.Все остальные конфигурации настроек enable-languages ​​(и когда настройка не изменена и используется значение по умолчанию) выдают мне эту ошибку:

/usr/local/cross/i586-elf/bin/ranlib ./libgcov.a
_error_not_here_yet - havent even thought about it - it may even work
make[1]: _error_not_here_yet: Command not found
make[1]: *** [treelang.all.cross] Error 127
make: *** [all-gcc] Error 2

Как я могу кросс-компилировать GCC?

1 Ответ

4 голосов
/ 16 августа 2010

Вы запускаете configure из дерева исходных текстов gcc? Если так: не делай этого. Следуйте инструкциям (дословно) на странице, на которую вы ссылаетесь.

Посмотрите внимательно, и вы заметите, что они запускают команду configure из вне дерева исходных текстов gcc.

Если ваша платформа поддерживается им, очень полезен скрипт crosstool (также связанный в нижней части страницы с инструкциями).

Редактировать: Как potatoswatter указывает в комментарии, ваша установка, вероятно, в данный момент скрыта. Удалите все дерево и начните с нуля. (Похоже, это займет слишком много времени, и вы захотите сделать короткий путь, но в итоге это будет быстрее, если вы только начнете с нуля.)

...