Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

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

User Info


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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:6
Форум » starterkit.ru » Embedded Linux
Помогите с кросс компиляцией!
sasamy
Добавлено 26.01.2012 16:11 Сообщение: 21
sasamy
4.70

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

ЗЫ Buildroot я не пользую пока


Если боитесь "завалить" демо-версию корневой которая по умолчанию идет на плате - собирайте тем-же кросскомпилятором.
Спуститься к концу Подняться к началу
Персональная информация
Lampus
Добавлено 27.01.2012 13:07 Сообщение: 22
Lampus
5

Пункты: 3552
Регистрация: 26.04.2011
Цитата
Я хочу чтобы динамические библиотеки glibc идущие в комплекте с тулчейном, были доступны моим приложениям, и были доступны исполняемые файлы навроде ldconfig(такой же файл есть в текущем glibc и они отличаются размерами)

Если хотите именно _glibc_, то вам проще пересобрать всю rootfs. Ибо демонстрационная rootfs построена на базе uclibc
Спуститься к концу Подняться к началу
Персональная информация
SmileGobo
Добавлено 29.01.2012 22:11 Редактировалось 30.01.2012 10:15 Сообщение: 23
SmileGobo
0

Пункты: 202
Регистрация: 25.01.2012
Цитата
Цитата
Я хочу чтобы динамические библиотеки glibc идущие в комплекте с тулчейном, были доступны моим приложениям, и были доступны исполняемые файлы навроде ldconfig(такой же файл есть в текущем glibc и они отличаются размерами)

Если хотите именно _glibc_, то вам проще пересобрать всю rootfs. Ибо демонстрационная rootfs построена на базе uclibc


А как проверить с каким рантаймом собрана rootfs? А то мне это так сказать в наследство досталось, что-то там пересобиралось что-то нет...
Вобще конечно стоит собрать все с новыми библиотеками и не парица

А вобще я сделал так:
1. из папки /arm-none-linux-gnueabi/libc скопировал в /home/glibc/ директории:
/lib
/bin
/usr
2. Подчистил их (оставил только .so и исполняемые файлы, можно поэкспериментировать: снести, например, ./usr/armv4, не пробовал пока)
3. Добавил ключи компиляции -Wl,-rpath=sysroot/lib:sysroot/usr/lib -Wl,-dynamic-linker=sysroot/lib/ld.so.1, где sysroot=/home/glibc
4. ....
5. PROFIT!!!

А щас это еще попробую провернуть в CodeBloks - если получиться опишу как это все делать
Спуститься к концу Подняться к началу
Персональная информация
Lampus
Добавлено 30.01.2012 09:16 Сообщение: 24
Lampus
5

Пункты: 3552
Регистрация: 26.04.2011
Цитата
А как проверить с каким рантаймом собрана rootfs?

Выполните на плате команду
Код
ls /lib | grep -i uClibc

Если у вас uClibc, то получите нечто вроде:
Код
ld-uClibc-0.9.30.2.so
ld-uClibc.so.0
libuClibc-0.9.30.2.so


А вообще рекомендую всё же разобраться с Buildroot, рано или поздно всё равно пригодится, и не придётся изобретать велосипед.
Спуститься к концу Подняться к началу
Персональная информация
SmileGobo
Добавлено 30.01.2012 10:14 Редактировалось 30.01.2012 10:16 Сообщение: 25
SmileGobo
0

Пункты: 202
Регистрация: 25.01.2012
Заметил ошибку у себя: рантайм лежит в /arm-none-linux-gnueabi/libc


ls /lib | grep -i libc
libc-2.3.6.so
libc.so.6
libcap.so.1
libcap.so.1.10
libcfont.so.0
libcfont.so.0.0.0
libcidn-2.3.6.so
libcidn.so.1
libcom_err.so.2
libcom_err.so.2.1
libconsole.so.0
libconsole.so.0.0.0
libcrypt-2.3.6.so
libcrypt.so.1
libctutils.so.0
libctutils.so.0.0.0

Версия получается просто другая
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux