ЗАО «ЗЭО»

Пожалуйста, войдите или зарегистрируйтесь.

Расширенный поиск  

Новости:

Автор Тема: Проблема со сборкой ядра  (Прочитано 12443 раз)

0 Пользователей и 1 Гость просматривают эту тему.

oev

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 47
Проблема со сборкой ядра
« : 13 Августа, 2014, 10:15:59 »

Доброго всем времени суток. Первый раз в жизни собираю ядро, встретился с такой проблемой и прошу о помощи!
Склонировал я git репозиторий  c zao-zeo  и провожу такие манипуляции

oev@oev:~/zao_git$ export ARCH=arm
oev@oev:~/zao_git$ export CROSS_COMPILE=arm-none-linux-gnueabi-
oev@oev:~/zao_git$ make tion270_defconfig
#
# configuration written to .config
#
oev@oev:~/zao_git$ make
scripts/kconfig/conf -s arch/arm/Kconfig
include/config/auto.conf:115:warning: symbol value 'elf32-i386' invalid for OUTPUT_FORMAT
include/config/auto.conf:164:warning: symbol value 'arch/x86/configs/i386_defconfig' invalid for ARCH_DEFCONFIG
include/config/auto.conf:385:warning: symbol value '-fcall-saved-ecx -fcall-saved-edx' invalid for ARCH_HWEIGHT_CFLAGS

*** Error during update of the kernel configuration.

make[2]: *** [silentoldconfig] Ошибка 1
make[1]: *** [silentoldconfig] Ошибка 2
make: *** Нет правила для сборки цели `include/config/auto.conf', требуемой для `include/config/kernel.release'.  Останов.


При этом конфигурационный файл собирается конкретно под tion270. Что я делаю не так? Если не выбирать arm архитектуру, то сборка собирается под x86
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Проблема со сборкой ядра
« Ответ #1 : 13 Августа, 2014, 14:39:04 »

1. Вы make делаете в той же сессии командной оболочки, т.е. у вас значения
переменных окружения ARCH и CROSS_COMPILE установлены перед вызовом make?

2. arm-none-linux-gnueabi- у вас как установлен?
Записан

oev

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 47
Re: Проблема со сборкой ядра
« Ответ #2 : 13 Августа, 2014, 15:23:10 »

1)переменные окружения устанавливаются в той же командной оболочке
2)arm-none-linux-gnueabi- установлен нормально. Путь  к папке с инструментарием прописан в переменную окружения. Так что в терминале я всегда могу после arm-none-linux-gnueabi-gcc -v получить версию компилятора.
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Проблема со сборкой ядра
« Ответ #3 : 13 Августа, 2014, 15:31:32 »

У вас нет в системе компилятора для x86?
Записан

oev

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 47
Re: Проблема со сборкой ядра
« Ответ #4 : 13 Августа, 2014, 15:55:48 »

Дайте подумать... есть! на машине стоит Eclipse, который прекрасно собирал проекты на сишечке под x86
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Проблема со сборкой ядра
« Ответ #5 : 13 Августа, 2014, 16:16:58 »

Распакуйте
http://www.zao-zeo.ru/media/files/tools/gcc/buildroot/gcc-4.3.4_armv5te_xscale_eabi.tar.gz
в /usr/local/arm

и задавайте
CROSS_COMPILE=/usr/local/arm/4.3.4-armv5te-xscale-eabi/usr/bin/arm-linux-
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Проблема со сборкой ядра
« Ответ #6 : 13 Августа, 2014, 16:21:14 »

После того как распакуете и зададите CROSS_COMPILE сделайте
make distclean
make tion270_defconfig
make
Записан

oev

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 47
Re: Проблема со сборкой ядра
« Ответ #7 : 13 Августа, 2014, 16:47:53 »

Архив распаковывается с ошибками
tar: usr/local/arm/4.3.4-armv5te-xscale-eabi/usr/lib/libdl.so: Невозможно создать символическую ссылку на `../../lib/libdl.so.0': Файловая система доступна только для чтения
 tar: usr/local/arm/4.3.4-armv5te-xscale-eabi/usr/lib/libm.so: Невозможно создать символическую ссылку на `../../lib/libm.so.0': Файловая система доступна только для чтения
 tar: usr/local/arm/4.3.4-armv5te-xscale-eabi/usr/lib/terminfo: Невозможно создать символическую ссылку на `/usr/local/arm/4.3.4-armv5te-xscale-eabi/usr/share/terminfo': Файловая система доступна только для чтения
 tar: usr/local/arm/4.3.4-armv5te-xscale-eabi/usr/arm-linux-uclibcgnueabi/sys-include: Невозможно создать символическую ссылку на `../include/': Файловая система доступна только для
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Проблема со сборкой ядра
« Ответ #8 : 13 Августа, 2014, 16:51:46 »

> Дайте подумать...

У вас нет прав на запись в /usr/local/arm ?
Записан

oev

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 47
Re: Проблема со сборкой ядра
« Ответ #9 : 13 Августа, 2014, 17:00:56 »

для начала я распаковываю под рутом в директорию, куда скопировал архив. У меня вообще нет папки /usr/local/arm. Я могу создать папку с правами 777 и распаковывать туда.
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Проблема со сборкой ядра
« Ответ #10 : 13 Августа, 2014, 17:03:26 »

Я писал распакуйте в /usr/local/arm
Записан

oev

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 47
Re: Проблема со сборкой ядра
« Ответ #11 : 13 Августа, 2014, 17:07:31 »

А какая разница куда разархивировать?
Но вообще я создал папку /usr/local/arm  и разархивировал туда без ошибок
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Проблема со сборкой ядра
« Ответ #12 : 13 Августа, 2014, 17:08:09 »

Результат сборки ядра?
Записан

oev

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 47
Re: Проблема со сборкой ядра
« Ответ #13 : 13 Августа, 2014, 17:24:18 »

Стало гораздо лучше, сборка вовсю запыхтела, но остановилась в этом месте

  AS       arch/arm/mm/abort-ev5t.o
   AS       arch/arm/mm/pabort-legacy.o
   CC       arch/arm/mm/copypage-xscale.o
   AS       arch/arm/mm/tlb-v4wbi.o
   AS       arch/arm/mm/proc-xscale.o
 /tmp/ccHnKQTr.s: Assembler messages:
 /tmp/ccHnKQTr.s: Error: .size expression for xscsale_dma_a0_map_area does not evaluate to a constant
 make[1]: *** [arch/arm/mm/proc-xscale.o] Ошибка 1
 make: *** [arch/arm/mm] Ошибка 2
Записан

asv

  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1405
Re: Проблема со сборкой ядра
« Ответ #14 : 13 Августа, 2014, 17:28:49 »

Какой дистрибутив Linux?
Записан