Доброго времени суток.
Давным-давно, во времена windows и msvc6, один добрый дядя рассказал мне, что если сделать статическую библиотеку, и прилинковать к своему приложению, то прилинкованы будут исключительно те функции, которые используются (прямо или косвенно).
Как-то не доводилось мне до этого, но пописывая под atmega32 начинаешь задумываться о размере своих программ. И каково же было мое удивление, когда я обнаружил что линковщик присоединяет весь .o из архива, не дробя его на функции.
В примере:
test1.c
void Test1()
{
}
void Test2()
{
}
если его собрать в архив, а потом прилинковать к приложению, которое пользует только Test1, то Test2 тоже будет прилинкован (а он может жрать 100500 байт флеша)
что же это получается товарищи, меня обманули?
или как-то можно добиться такого поведения? man ld изучал, может проглядел, буду благодарен если кто ткнет носом.
Ответ на:
комментарий
от true_admin
Ответ на:
комментарий
от unsigned
Ответ на:
комментарий
от unsigned
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anon_666
Ответ на:
комментарий
от anonymous
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Статическая линковка (2013)
- Форум Статическая линковка (2010)
- Форум Статическая линковка (2009)
- Форум Статическая линковка (2006)
- Форум статическая линковка? (2006)
- Форум статическая линковка (2007)
- Форум статическая линковка (2000)
- Форум fPICопроблемы при линковке шаредной либы со статической (2012)
- Форум Линковка статических библиотек (2017)
- Форум Линковка статической библиотеки (2016)