Использование инструментов кросс-компиляции в сборке ядра
Я нахожусь в процессе сборки ядра Linux на beagleboard-xm (после этого урока - я на шаге 10). Я продолжаю требовать много инструментов кросс-компиляции с префиксом arm-linux-gnueabi
, Единственное, что мне удалось установить, это arm-linux-gnueabi-gcc
и теперь мне нужно arm-linux-gnueabi-ld
,
Мои вопросы:
- Нужно ли использовать такие инструменты кросс-компиляции, если я собираю ядро на том же компьютере, на котором оно будет работать?
- Как мне установить эти инструменты кросс-компиляции? Я неистово гуглил
arm-linux-gnueabi
с очень небольшими результатами.
1 ответ
Ответ на ваш первый вопрос - Нет. Вам не нужны инструменты кросс-компиляции, если вы собираете ядро на том же компьютере, на котором оно будет работать. Хост-компилятор будет работать за вас.
Ответ на второй вопрос - два способа сделать это:
a) using existing cross compilation tools (already build), you can download it via Software Center of any popular distro like Fedora, Ubuntu. Cross compilation will be prefixed with platform name i.e if you need arm tool chains it will be something like arm-linux-gnueabi-gcc.
b) You can build your own cross compilation tool chains from the source of GCC. It's quite difficult and time consuming stuff.
Но вы можете избежать всех вышеперечисленных шагов и использовать такие инструменты, как buildroot, openembedded и т. Д., Которые облегчат вам всю задачу и помогут вам построить хорошее встроенное ядро. Эти инструменты выполнили все задачи, связанные с кросс-компиляцией, сборкой ядра, сборкой ядра, задачами генерации rootfs. Надеюсь, это поможет!