Цитата(3.14 @ Sep 4 2007, 16:02)

Итак ... взял образ рамдиска отсюда
http://heavy-online.ru/arm-linux/ .
На удивление, все заработало, теперь пошли общие вопросы.
Скачал более свежий busybox, насколько я понимаю, если я его собираю (make CROSS_COMPILE=arm-linux-), то при сборе он использует либу glib, причем для x86?
По крайней мере, все попытки запустить на моем девайсе самодельно собранный бузибокс закончились неудачей, пробовал и статически собирать и ... .
Новую либу тоже надо кросс компилятором собрать?
Надо собрать кросс-компилятор, потом этим кросс-компилятором собрать glibc.
Прописать в PATH путь к кросс-компилятору
ВПЕРЕДИ остальных путей.
Что-то на подобие:
Код
cd glibc-2.3.6
configure --target=arm-linux host=arm-linux build=i686-pc-linux-gnu
Само собой, надо указать Ваш "arm-linux"
Для сравнения у меня под big-endian для IXP425 - это armv5b-softfloat-linux
Вообще-то лучше всего взять crosstools
http://kegel.comТам очень просто настраивается три файла, собирает все, начиная от binutils и заканчивая gdb.
У busybox есть конфигуратор, как в ядре. Запускается по make menuconfig.
Цитата
Еще, мне надо как то Z-modem к моему хозяйству прикрутить, чтоб начать ковырятся с драйвером NAND флешки (иначе тонны времени потрачу на обновлении корневухи).
На ум приходит только minicom. Он использует отдельный пакет, не помню как называется.
Посмотрите в составе пакета minicom, что он использует. Можно перекомпилить.
Сам я этим не занимался, у меня флеш прошивается по Ethernet. Думаю, что uboot это тоже может.
Цитата
Какие могут возникнуть минусы, если пользоваться uClib?
Думаю, стоит ли бузибокс с uClib собирать ...
Скачал uClib, собирается если указать процессор i386, если указать ARM, вываливается с криком:Причем от настройки индианы это не зависит.
uClibc никогда не пробовал, именно из-за возможных минусов. Памяти достаточно - 16M Flash 64M SDRAM.
Цитата
Цитата
./extra/scripts/conf-header.sh .config > include/bits/uClibc_config.h
cc1: error: invalid option `little-endian'
cc1: error: invalid option `little-endian'
CC ldso/ldso/ldso.oS
cc1: error: invalid option `little-endian'
make: *** [ldso/ldso/ldso.oS] Ошибка 1
Ключи gcc -mlittle-endian и -mbig-endian определены для ARM. Похоже, что у Вас вызывается gcc хоста (x86), для которого эти ключи не определены. См. выше про PATH.
Для uClibc есть какой-то конфигуратор? Тогда надо там указать target и host (см. выше).