Использую Debian Lenny с вики стартеркит, он собран по всей видимости при помощи uclibc. На диске, что идёт в комплекте с платой есть вирт.машина с Linux, где используется arm-none-linux-gnueabi-gcc который использует glibc.
Задача: создавать под виртуальной машиной бинарники, пригодные для запуска на плате.
Вижу два пути:
1) На самой плате. можно установить на Debian lenny, собраный с uclibc, библиотеку glibc? Чтобы не собирать статически каждый раз.
2) Скачать и установить на вирт.машине другой компилятор(armv5l-linux-uclibc-gcc), использующий uclibc.
3) собрать рутовую для платы с использованием glibс. Как это сделать вообще ума не приложу.
значит пост распадается на два больших вопроса:
1) что делать, чтобы бинарники собирались нормально и запускались на плате сразу.
2) как собрать свою рутовую с нужными мне пакетами под нужную мне платформу(arm в частности).
Ниразу не видел Debian с uclibc... что показывает
#ls /lib | grep uclibc
подозреваю из названия этой корневой rootfs-debian-lenny-arm.tar.gz
что это корневая с OABI (для EABI используют обозначение armel), тогда как вы используете кросскомпилятор
впринципе статическая сборка должна была помочь в этом случае (но я в этом не уверен), если конечно ядро собрано с поддержкой обоих ABI.
статическая сборка мне не нужна.
я использовал компилятор arm-none-linux-gnueabi-gcc и думал что поможет armv5l-linux-uclibc-gcc
#ls /lib | grep uclibc - не пробовал, вечером попробую
[quote]Задача: создавать под виртуальной машиной бинарники, пригодные для запуска на плате.
Не совсем по теме, может быть компиляция на плате устроит?
Тогда
apt-get install gcc
apt-get install g++
после этого получаете на плате компилятор. Binutils доставляете при желании.[/quote]
впринципе устроит такой вариант:
пишу приложение на Linux-машине, отлаживаю. Затем переношу исходники на плату и собираю там, поменяв только Makefile.
это на плате поможет?:
apt-get install gcc
apt-get install g++