Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:1
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Embedded Linux
компиляция ядра linux под ARM
scorpion
Добавлено 25.08.2011 11:47
4
Сообщение: 1
scorpion
0

Пункты: 610
Регистрация: 12.01.2011
Здравствуйте! Около полугода назад удачно собирал данное ядро (причем не один раз) на виртуальной машине в Ubuntu 9_04 под Win_Xp. Сейчас возникла необходимость откомпилировать его еще раз, но на данный момент я перешел на Ubuntu 11 возникли следующие трудности:


stas17@Intel:/usr/src/linux-2.6.30$ make ARCH=arm CROSS_COMPILE=/home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-
make: /home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-gcc: Команда не найдена
scripts/kconfig/conf -s arch/arm/Kconfig
make: /home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-gcc: Команда не найдена
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' не требует обновления.
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-arm
CC kernel/bounds.s
/bin/sh: /home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-gcc: not found
make[1]: *** [kernel/bounds.s] Ошибка 127
make: *** [prepare0] Ошибка 2



Поискал информацию об этом: практически все решают эту проблему исправлением cтроки CROSS_COMPILE , но путь у меня задан правильно.
Судя по всему, проблема в Makefile, потому что не находит кросс-компилятор. Но почему не находит?
Заранее благодарен.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 25.08.2011 12:47 Редактировалось 25.08.2011 12:50 Сообщение: 2
sasamy
4.71

Пункты: 83542
Регистрация: 14.08.2009
Цитата

Судя по всему, проблема в Makefile


При чем тут Makefile если раньше все работало :) Смотрите - есть ли права на выполнение у кросскомпилятора
ls -l /home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-gcc
должно быть типа этого
-rwxr-xr-x
и сделайте
make ARCH=arm clean
перед сборкой, после этого собирайте.
Спуститься к концу Подняться к началу
Персональная информация
scorpion
Добавлено 25.08.2011 13:05 Редактировалось 25.08.2011 13:23 Сообщение: 3
scorpion
0

Пункты: 610
Регистрация: 12.01.2011
После команды
ls -l /home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-gcc
получаю то, что и должно быть:
-rwxr-xr-x 2 stas17 sudo 208016 2010-04-17 21:10 /home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-gcc

А если перед сборкой делаю make ARCH=arm clean получаю следующее сообщение:
stas17@Intel:/usr/src/linux-2.6.30$ make ARCH=arm clean
make: /home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-gcc: Команда не найдена
make[2]: /home/stas17/toolchain/arm-2010q1/bin/arm-none-linux-gnueabi-gcc: Команда не найдена
CLEAN .tmp_versions
CLEAN include/asm-arm/mach-types.h

В результате получаю те же ошибки..
Спуститься к концу Подняться к началу
Персональная информация
scorpion
Добавлено 25.08.2011 18:43 Сообщение: 4
scorpion
0

Пункты: 610
Регистрация: 12.01.2011
Проблема была решена! Причина, скорее всего, была в отсутствии всех необходимых пакетов для сборки. Если кому-то понадобится, то следует установить следующие пакеты:

sudo apt-get install fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge

sudo apt-get build-dep linux

sudo apt-get install git-core libncurses5 libncurses5-dev libelf-dev asciidoc binutils-dev
Спуститься к концу Подняться к началу
Персональная информация
Spirit
Добавлено 03.12.2011 23:19 Сообщение: 5
Spirit
0

Пункты: 3257
Регистрация: 06.05.2010
Пол: Мужчина
Из: Энгельс-Саратов
у меня, в дополнение к тому, что доустановил scorpion на Ubuntu 11 пришлось докачивать и устанавливать пакет bison.
Спуститься к концу Подняться к началу
Персональная информация
Spirit
Добавлено 04.12.2011 22:06 Сообщение: 6
Spirit
0

Пункты: 3257
Регистрация: 06.05.2010
Пол: Мужчина
Из: Энгельс-Саратов
Ребята, а где для make_kernel прописывается путь к компилятору???? устал искать. в билдруте нашел, а в кернеле никак недопру:(:(:(
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 04.12.2011 22:37 Сообщение: 7
Pavel Ivanchenko
Admin
4.39

Пункты: 92788
Регистрация: 24.03.2009
Пол: Мужчина
Он прописывается в PATH системы, должен быть в /etc/profile
Спуститься к концу Подняться к началу
Персональная информация
Spirit
Добавлено 04.12.2011 22:44 Сообщение: 8
Spirit
0

Пункты: 3257
Регистрация: 06.05.2010
Пол: Мужчина
Из: Энгельс-Саратов
спасибо, сейчас попробую
Спуститься к концу Подняться к началу
Персональная информация
Spirit
Добавлено 04.12.2011 23:17 Сообщение: 9
Spirit
0

Пункты: 3257
Регистрация: 06.05.2010
Пол: Мужчина
Из: Энгельс-Саратов
странно, получил оба файла со странным сопровождением:
Код

./make_kernel: 5: arm-none-linux-gnueabi-objcopy: not found
Image Name: Linux Kernel Image
Created: Mon Dec 5 00:08:16 2011
Image Type: ARM Linux Kernel Image (gzip compressed)
.....


./make... - так и должно быть????
Спуститься к концу Подняться к началу
Персональная информация
Spirit
Добавлено 05.12.2011 08:55 Сообщение: 10
Spirit
0

Пункты: 3257
Регистрация: 06.05.2010
Пол: Мужчина
Из: Энгельс-Саратов
кстати, путь к компилятору, по крайне мере для сборки ядра, я менял в make_kernel
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux