Ник:
Пароль:

Контакты

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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Embedded Linux
Динамические библиотеки
Kris
Добавлено 01.08.2011 17:06 Редактировалось 02.08.2011 10:41
0
Сообщение: 1
Kris
0

Пункты: 234
Регистрация: 27.07.2011
Использую SK-AT91SAM9260 и натроенную систему сборки, поставляемую в виде образа виртуальной машины. Собираю приложения под linux. Все работает, но при сборке -static.

Если с динамическми библиотеками, то при запуске приложениея на плате. -sh: /home/test: Not found.

Например:
#include <stdio.h>
int main(void)
{
printf("Hello word");
return 0;
}

Компилируем arm-none-linux-gnueabi-gcc -o test test.c

Есть предположение, что из-за uclibc и glibc. Т.е. на плате uclibc, а я собираю с glibc.

ldd /home/test выдает
checking sub-depends for 'not found'
libc.so.6 => not found (0x00000000)
/lib/ld-linux.so.3 => /lib/ld-linux.so.3 (0x00000000)

Содержимое /lib:
# ls -l
ld-uClibc-0.9.30.2.so
ld-uClibc.so.0 -> ld-uClibc-0.9.30.2.so
libc.so.0 -> libuClibc-0.9.30.2.so
libcrypt-0.9.30.2.so
ibcrypt.so.0 -> libcrypt-0.9.30.2.so
libdl-0.9.30.2.so
libdl.so.0 -> libdl-0.9.30.2.so
libgcc_s.so -> libgcc_s.so.1
ibgcc_s.so.1
libm-0.9.30.2.so
libm.so.0 -> libm-0.9.30.2.so
libnsl-0.9.30.2.so
libnsl.so.0 -> libnsl-0.9.30.2.so
libpthread-0.9.30.2.so
libpthread.so.0 -> libpthread-0.9.30.2.so
libresolv-0.9.30.2.so
libresolv.so.0 -> libresolv-0.9.30.2.so
librt-0.9.30.2.so
librt.so.0 -> librt-0.9.30.2.so
libuClibc-0.9.30.2.so
libutil-0.9.30.2.so
libutil.so.0 -> libutil-0.9.30.2.so
modules

Я прав по поводу uClibc и libc? Как нормально собрать приложение с динамическими библиотеками?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 02.08.2011 10:05 Сообщение: 2
sasamy
4.70

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

Как нормально собрать приложение с динамическими библиотеками?


Собирайте корневую ФС и свои приложения одним кросскомпилятором - никаких проблем нет с динамическими библиотеками.
Спуститься к концу Подняться к началу
Персональная информация
Kris
Добавлено 02.08.2011 10:43 Сообщение: 3
Kris
0

Пункты: 234
Регистрация: 27.07.2011
Заново все собирать - свои проблемы будут.
Всеж-таки кто работал с образом с системой сборки от старкит... как сие лечится?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 02.08.2011 11:12 Редактировалось 02.08.2011 11:22 Сообщение: 4
sasamy
4.70

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

Заново все собирать - свои проблемы будут.


Если вы не научитесь делать элементарные вещи - проблемы в будущем гарантированы, даже если сейчас ваш хелловорд заработает.

Чтобы не пересобирать корневую - найдите в дереве buildroot кросскомпилятор, пропишите путь к нему в PATH и используйте его для сборки своих программ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux