компиляция ядра 3.xx на ubuntu 20 - PullRequest
0 голосов
/ 08 мая 2020

Мне нужно скомпилировать ядро ​​3.4 для armhf, а для этого требуется g cc -4.9.
строка cmd:
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- tegra_defconfig (здесь я не уверен, что мне нужно установить CROSS_COMPILE)
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-

Проблема в том, что я не могу заставить ubuntu использовать g cc -4.9, который недоступен, мне пришлось добавить xenial в файл 'sources.list' и теперь он у меня есть в моей системе, но я не могу его использовать.
Добавление CC=gcc-4.9 к командам не будет использовать префикс arm-linux-gnueabihf, определенный как CROSS_COMPILE.
update-alternatives не распознает g cc -4.9 в качестве второго c компилятора. Есть ли у кого-нибудь способ обойти это?
Пожалуйста, не оставляйте комментарий типа «установить xenial».

1 Ответ

0 голосов
/ 08 мая 2020

Из этого потока: Как изменить компилятор G CC по умолчанию в Ubuntu?

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50
sudo update-alternatives --set gcc /usr/bin/gcc-4.9
gcc --version
gcc (Ubuntu 4.9.3-13ubuntu2) 4.9.3
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Чтобы придерживаться моего случая (кросс-компиляция):

sudo update-alternatives --install /usr/bin/arm-linux-gnueabihf-gcc arm-linux-gnueabihf-gcc /usr/bin/arm-linux-gnueabihf-gcc-4.9 50
sudo update-alternatives --set arm-linux-gnueabihf-gcc /usr/bin/arm-linux-gnueabihf-gcc-4.9

для ядра 3.xx и старше perl требуется, вы можете обойти ошибки с помощью perlbrew use perl-5.10.0, выполнив perlbrew init и perlbrew install perl-5.10.0 (внимательно прочитайте вывод двух последних команд).

ПРИМЕЧАНИЕ, что даже при кросс-компиляции вам необходимо установить g cc хоста на 4.9, потому что это требуется генератору конфигурации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...