реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Как отключить динамическую линковку, Linux
3.14
сообщение Oct 15 2007, 09:58
Сообщение #1


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Вот мой makefile:
Код
CC=arm-linux-gcc
CXX=arm-linux-g++
LD=arm=linux-ld

LDFLAGS=-L/usr/local/arm-linux/arm-linux/lib

export CC
export CXX
export LD
export LDFLAGS

EXEC = cmdproc
OBJS = cmdproc.o

all: $(EXEC)

$(EXEC): $(OBJS)
    $(CC) $(LDFLAGS) -o $@ $(OBJS)

romfs:
    $(ROMFSINST) /bin/$(EXEC)

clean:
    -rm -f $(EXEC) *.elf *.gdb *.o
При попытке запуска на встраиваемой системе требует либу (которой в ее корневухе нет).
Как "сказать" что нужна статическая линковка?


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Oct 15 2007, 11:38
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 975
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Код
LDFLAGS=-L/usr/local/arm-linux/arm-linux/lib -static
Go to the top of the page
 
+Quote Post
3.14
сообщение Oct 15 2007, 11:49
Сообщение #3


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Спасибо.
Теперь я в недоумении, вес приложения вырос с 20 до 520к!!!
Это вся библиотека "тупо" подлинковалась, потому как требуемые либы примерно столько весят, как то можно "поправить"?


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
Harbour
сообщение Oct 16 2007, 05:30
Сообщение #4


Местами Гуру
*****

Группа: Validating
Сообщений: 1 103
Регистрация: 5-12-04
Пользователь №: 1 323



линкуются только те функции, которые есть в программе, если не верится - nm a.out. В уменьшении размера поможет strip -s (sstrip) и upx. Также неплохо покурить доки на ld на предмет gc-sections.
Go to the top of the page
 
+Quote Post
3.14
сообщение Oct 16 2007, 06:45
Сообщение #5


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



ок
Т.к. разместить в моей корневухе такие "тяжести" нет особой возможности, положил требуемые либы в /lib директорию.
Но, приложения их почему то не могут найти ... ?


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
KirillS
сообщение Nov 1 2007, 18:49
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 10-10-06
Пользователь №: 21 161



Цитата(3.14 @ Oct 16 2007, 08:45) *
ок
Т.к. разместить в моей корневухе такие "тяжести" нет особой возможности, положил требуемые либы в /lib директорию.
Но, приложения их почему то не могут найти ... ?

Попробуйте определить LD_LIBRARY_PATH=/lib:/usr/local/lib


--------------------
Some days you eat the bear. Some days the bear eats you.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 19:52
Рейтинг@Mail.ru


Страница сгенерированна за 0.01366 секунд с 7
ELECTRONIX ©2004-2016