Перейти к содержанию
    

Запуск Linux на плате RainBow v1.1

Прошу прошение за долгле молчание и за то что не выслал пакеты

Какнал связи не позволил

И начальство тоже

Выкладываю здесь потом напишу как ставил сам

 

 

выложил патчи

patches.tar.gz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Где и в каком пункте (по мануалу с heavy-online) должны быть прописаны UNAME_SYSNAME, UNAME_RELEASE, UNAME_VERSION и UNAME_MACHINE? А главное где?.. Это при сборке glibc ругается...

 

З.Ы. Уже за**ся.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Внесу свои пять копеек.

Со сборкой мучился долго но так и не смог полностью собрать. Постоянно выскакивали ошибки. Потом плюнулю Скачал собраный разархивировал. И вуаля заработал.

Сегодня попробую собрать под Слакой из других исходников

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Внесу свои пять копеек.

Со сборкой мучился долго но так и не смог полностью собрать. Постоянно выскакивали ошибки. Потом плюнулю Скачал собраный разархивировал. И вуаля заработал.

Сегодня попробую собрать под Слакой из других исходников

Собираю по докам с оф. канала ирки. Сак кросскомпилер есть, убут собирал уже. Но ядро не собрать, лезут странные ошибки, в частности, с bash. Пока не до компилера, но на след неделе надеюсь вылечить. Потом инструкции дам.

В частности, в генту есть все нужное для кросскомпилера, но много нюансов, например, нужно брать linux-headers не 2.6.20 (я 2.6.17 взял), гцц 3.4.6... 4.х -- есть тонкости сборки, пока не мучил его.

Мне вот что непонятно... Там так строится имя кросскомпилера - arm-softfloat-linux-uclibc

Понятно только с архитектурой, а вот дальше.. Почему именно softfloat, есть всякие gentoo, pc, unknown

Вместо линуха можно elf, linux, uclinux

либы -- gnu, uclibc

Делал по доке...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Playnet,

все просто и понятно.

Почитайте доку - http://www.gentoo.org/proj/en/base/embedde...development.xml

я собирал arm-rainbow-linux-uclibc.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Playnet,

все просто и понятно.

Почитайте доку - http://www.gentoo.org/proj/en/base/embedde...development.xml

я собирал arm-rainbow-linux-uclibc.

Эээ.. это как? Почему rainbow?

И как собирать bash? В доках сказано, что кросс глючный, лучше нативный. А как его привязать...

И есть еще проблемы со сборкой.

По тому линку кстати и делал.

Отваливаюсь на xmerge gentoo-source

выпадают баш и еще какие-то 2 пакета.

 

Code Listing 5.1: Installing kernel sources for the target system

# xmerge -av gentoo-sources

вот тут клинит...

Изменено пользователем Playnet

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

rainbow - потому что понравилось. :) На функциональность не влияет.

баш дейстивтельно не собирается. и еще куча пакетов :(

Есть два способа решения проблемы.

1. Собирать все на целевом устройстве (плате rainbow).

2. Собирать в симуляторе qemu.

 

У каждого способа свои "+" и "-".

1. Все что собирается - уже точно работает. Но процесс сборки идет медленно.

 

2. Работает очень быстро, но нет гарантии что все заработает.

 

> xmerge -av gentoo-sources

что выводит?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

rainbow - потому что понравилось. :) На функциональность не влияет.

баш дейстивтельно не собирается. и еще куча пакетов :(

Есть два способа решения проблемы.

1. Собирать все на целевом устройстве (плате rainbow).

2. Собирать в симуляторе qemu.

 

У каждого способа свои "+" и "-".

1. Все что собирается - уже точно работает. Но процесс сборки идет медленно.

 

2. Работает очень быстро, но нет гарантии что все заработает.

 

> xmerge -av gentoo-sources

что выводит?

Чтобы собирать на плате, надо иметь ядро. А для его сборки надо поставить сорцы...

Но у нас же стоит кросскомпилер и штатные сырцы...

Что, если создать конфиг под арм и собрать его на системных сорцах, изменив пути?

mkdir /usr/src/arm

chown arm:arm /usr/src/arm

Можно распаковать сюда сорцы, пропатчить и собирать.

(кстати, патчить особо и не нужно, ftp://ftp.arm.linux.org.uk/pub/armlinux/s...hes/v2.6/README )

 

Или просто,

ARCH="arm" CROSS_COMPILE="arm-linux-gnu-uclibc-" make

make clean

make dep

make zImage

make modules

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

xmerge -av gentoo-sources

 

 

 

checking for alloca... (cached) yes

checking whether getpgrp requires zero arguments... yes

checking whether setvbuf arguments are reversed... configure: error: cannot run test program while cross compiling

 

!!! Please attach the following file when filing a report to bugs.gentoo.org:

!!! /var/tmp/portage/app-shells/bash-3.1_p17/work/bash-3.1/config.log

 

!!! ERROR: app-shells/bash-3.1_p17 failed.

 

 

Как лечить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Собираю бутром, вшиваю.

Init hardware
press any key
run 80%
Freq OSC Main - 15998976 Hz
Freq PLLA     - 179988480 Hz
Freq PLLB     - 95993856 Hz
Freq PCK      - 179988480 Hz
Freq MCK      - 89994240 Hz
DBGU BR       - 170454 Hz

ATMEL LOADER VER SV.01 Mar 13 2007 01:42:52
*----------------------------------------*
DataFlash :  unknown 0x34
*----------------------------------------*
1: Download Dataflash [addr]
2: Read Dataflash [addr]
3: Start U-BOOT
4: Clear bootloader section in Dataflash
*----------------------------------------*

 

Хорошо конечно, что частоты показывает... Но писать лоадер не умеет, в отличие от хэви.

Причем и читать тоже..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

xmerge -av gentoo-sources

 

 

 

checking for alloca... (cached) yes

checking whether getpgrp requires zero arguments... yes

checking whether setvbuf arguments are reversed... configure: error: cannot run test program while cross compiling

 

!!! Please attach the following file when filing a report to bugs.gentoo.org:

!!! /var/tmp/portage/app-shells/bash-3.1_p17/work/bash-3.1/config.log

 

!!! ERROR: app-shells/bash-3.1_p17 failed.

 

 

Как лечить?

попробуй USE="-*" xmerge -av gentoo-sources

 

 

Собираю бутром, вшиваю.

Init hardware
press any key
run 80%
Freq OSC Main - 15998976 Hz
Freq PLLA     - 179988480 Hz
Freq PLLB     - 95993856 Hz
Freq PCK      - 179988480 Hz
Freq MCK      - 89994240 Hz
DBGU BR       - 170454 Hz

ATMEL LOADER VER SV.01 Mar 13 2007 01:42:52
*----------------------------------------*
DataFlash :  unknown 0x34
*----------------------------------------*
1: Download Dataflash [addr]
2: Read Dataflash [addr]
3: Start U-BOOT
4: Clear bootloader section in Dataflash
*----------------------------------------*

 

Хорошо конечно, что частоты показывает... Но писать лоадер не умеет, в отличие от хэви.

Причем и читать тоже..

 

у меня почему то и u-boot зашивается и память читается. Что я делаю не так?

 

P.S. у тебя флешка не определилась - "DataFlash : unknown 0x34"

У меня пишет -

DataFlash : AT45DB642

Number pages = 8192

Page size = 1056

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Правильнее USE="-*" xmerge -avO gentoo-sources

 

так собираем кросскомпилятор в gentoo:

 

1. emerge -av crossdev

 

2. USE="-iconv" crossdev-stable -v --b 2.16.1-r3 --g 3.4.6-r2 --k 2.6.11-r3 --l 0.9.28 --ex-gdb -t arm-rainbow-linux-uclibc

 

если нужен softfloat, то пишем так:

 

USE="-iconv" crossdev-stable -v --b 2.16.1-r3 --g 3.4.6-r2 --k 2.6.11-r3 --l 0.9.28 --ex-gdb -t arm-softfloat-linux-uclibc

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Собрал все/ под Debianom

при первой попытке скомпилировать первичный загрузчик заругалась

сижу разбираюсь

странно - у меня все скомпилилось, честно исходники скачанные с сайта heavy..

но самое полезное там - это готовый тулчейн 8)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Решил все-таки собрать это под цигвин. Собрал binutils, собрал гнуся. Дело за библиотекой - и вот какая фигня:

arm-linux-gcc   -nostdlib -nostartfiles -shared -o /usr/local/arm/src/BUILD/glibc-2.3.6/elf/ld.so            \
          -Wl,-z,combreloc -Wl,-z,relro -Wl,-z,defs     \
          /usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os -Wl,--version-script=/usr/local/arm/src/BUILD/glibc-2.3.6/ld.map        \
          -Wl,-soname=ld-linux.so.2 -T /usr/local/arm/src/BUILD/glibc-2.3.6/elf/ld.so.lds
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `dl_main':
/usr/local/arm/src/glibc-2.3.6/elf/rtld.c:1181: undefined reference to `__access'
/usr/local/arm/src/glibc-2.3.6/elf/rtld.c:2293: undefined reference to `__open'
/usr/local/arm/src/glibc-2.3.6/elf/rtld.c:2265: undefined reference to `__access'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `lose':
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:791: undefined reference to `__close'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `_dl_map_object_from_fd':
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:833: undefined reference to `__GI___fxstat64'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:848: undefined reference to `__close'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:932: undefined reference to `__lseek'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:933: undefined reference to `__libc_read'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1358: undefined reference to `__close'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:877: undefined reference to `__close'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `open_verify':
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1514: undefined reference to `__open'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1526: undefined reference to `__libc_read'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1615: undefined reference to `__lseek'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1616: undefined reference to `__libc_read'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1650: undefined reference to `__close'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1633: undefined reference to `__lseek'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1634: undefined reference to `__libc_read'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `open_path':
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1749: undefined reference to `__GI___fxstat64'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1755: undefined reference to `__close'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1729: undefined reference to `__GI___xstat64'
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1776: undefined reference to `__close'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `_dl_map_object':
/usr/local/arm/src/glibc-2.3.6/elf/dl-load.c:1959: undefined reference to `__close'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `_dl_new_object':
/usr/local/arm/src/glibc-2.3.6/elf/dl-object.c:147: undefined reference to `__getcwd'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `_dl_sysdep_read_whole_file':
/usr/local/arm/src/glibc-2.3.6/elf/dl-misc.c:58: undefined reference to `__open'
/usr/local/arm/src/glibc-2.3.6/elf/dl-misc.c:61: undefined reference to `__GI___fxstat64'
/usr/local/arm/src/glibc-2.3.6/elf/dl-misc.c:79: undefined reference to `__close'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `_dl_start_profile':
/usr/local/arm/src/glibc-2.3.6/elf/dl-profile.c:287: undefined reference to `__open'
/usr/local/arm/src/glibc-2.3.6/elf/dl-profile.c:298: undefined reference to `__close'
/usr/local/arm/src/glibc-2.3.6/elf/dl-profile.c:304: undefined reference to `__GI___fxstat64'
/usr/local/arm/src/glibc-2.3.6/elf/dl-profile.c:335: undefined reference to `__close'
/usr/local/arm/src/glibc-2.3.6/elf/dl-profile.c:355: undefined reference to `__close'
/usr/local/arm/src/glibc-2.3.6/elf/dl-profile.c:320: undefined reference to `__lseek'
/usr/local/arm/src/glibc-2.3.6/elf/dl-profile.c:327: undefined reference to `__libc_write'
/usr/local/arm/src/BUILD/glibc-2.3.6/elf/librtld.os: In function `check_one_fd':
../sysdeps/generic/check_fds.c:44: undefined reference to `__libc_fcntl'
../sysdeps/generic/check_fds.c:60: undefined reference to `__GI___fxstat64'

 

Совсем мне не ясно, где же он потерял эти функции?

 

Дальнейшие консультации с гуглей показали что

Use a case-sensitive file System (Unix File System or Mac OS Extended Case-sensitive). Building GLIBC fails in a case-insentive file system (don’t ask me why !), with the following error message:
....

 

И как бы в цигвине добиться зависимости от регистра? Или как бы найти причину?

Хотя стоп... Может дело при распаковке происходит... Щас пойду копать...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...