|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июл 8, 2003 20:09:20 Есть статическая либа с одним (!) OBJ-файлом. В этом файле уйма полезных ф-ций, но мне нужны не все, а толко 3-4. При линковке, естественно, ВСЕ ф-ции (нужные и ненужные) попадают в экзешник. Согласно документации, линкер тут бессилен помочь с оптимизацией. Может есть какой-нибудь другой метод или тулзень, чтоб исключить лишний код из OBJ? |
|
|
Дата: Июл 8, 2003 20:33:57 · Поправил: volodya Привет. Ты опять поднимаешь интересный вопрос. А ты уверен, что они ПОПАДАЮТ в результирующий файл? Ты проверял? Насколько я читал Linkers and Loaders (раздел док на васме), я думал, линкер исключает все, кроме того, на что идет reference. Кстати, о каком линкере идет речь? Майкрософтовский? |
|
|
Дата: Июл 8, 2003 20:49:11 А ты уверен, что они ПОПАДАЮТ в результирующий файл? Абсолютно уверен. Мы с Asterix'ом несколько раз проверяли. Это справедливо не толко для LINK.EXE, но и для всех (или почти) линкеров. ЗЫ: Это из серии "Dll2Lib и все-все-все" |
|
|
Дата: Июл 8, 2003 21:10:22 Тогда слушай ответ. Берешь, значит, такой себе, хекс-редактор, берешь доку по COFF/OMF-форматам и начинаешь методично вытрипывать все, что движется и дышит! :)))))))))))))) Наверное, тебе хочется что-то в меня бросить :)> |
|
|
Дата: Июл 8, 2003 21:15:53 Делаю вид, будто я это не прочитал :-[ |
|
|
Дата: Июл 8, 2003 21:24:12 Ха, я нашел! lib /REMOVE!!!! Вот, что спасет отца русской демократии! |
|
|
Дата: Июл 8, 2003 21:39:52 volodya /REMOVE убирает OBJ-файлы когда их там несколько (по одному на каждую ф-цию, например), а у меня только ОДИН файл. Не удалить же его?! |
|
|
Дата: Июл 8, 2003 21:46:04 Мдя... А что на счет tdump? Она только показывает или позволяет редактировать тоже? |
|
|
Дата: Июл 8, 2003 22:43:21 TDUMP, DUMPBIN и OBJHELP показывают да и только :( |
|
|
Дата: Июл 9, 2003 11:58:00 Quantum Чуда не будет. Думаю такой тулзы нет, которая извлекает функции. Да и потом это не возможно (в силу многих обстоятельств..) Хотя нет!!! Возможно, и иногда даже получится. Получается нужно написать анализатор адресов и адресов переходов.... Грусная это история. |
|
|
Дата: Июл 9, 2003 12:02:35 ALL Кстати, я давно указывал на этот недостаток LIB :))) |
|
|
Дата: Июл 9, 2003 12:26:25 Для того, чтобы из библиотеки подлинковывались только нужные функции, библиотеку надлежит собирать из кучи объектников по одной функции в файле. Так было всегда. ;) А даже если ты поубиваешь неиспользуемые функции в объектнике, то чтобы убрать пустые места (поджать оставшиеся функции друг к другу) тебе придётся править в оставшихся функциях все локальные смещения. Единственное, что можно навскидку предложить, это дизассемблировать его и натравить что-нибудь вроде TMG Ripper studio. ;)) А потом пересобрать. После сборки обработать напильником. (с) :) Больше, конечно, перед сборкой. ;) |
|
|
Дата: Июл 9, 2003 16:57:52 TMG Ripper studio рулит, прикольная штука, помогает :) |
|
|
Дата: Июл 9, 2003 18:13:06 Положил |
|
|
Дата: Июл 9, 2003 18:32:06 Всем спасибо за советы! Тема снимается. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.059 |