Я написал эту простую библиотеку с:Как разобрать статическую библиотеку .lib?
library.h:
int sum(int a, int b);
library.c:
#include "library.h"
int sum(int a, int b) {
return a+b;
}
Я составил его cl.exe (Visual Studio 2012), используя эти команды:
cl /c /EHsc library.cpp
lib library.obj
который скомпилировал его как файл библиотеки статических ссылок .lib. Теперь я хотел бы посмотреть, как компилятор сгенерировал код сборки, для обучения/академических целей. Обратите внимание: я не хочу декомпилировать его, я просто хочу прочитать созданную сборку. Я попытался открыть .lib с w32dasm, но у меня появилось много странных символов, и похоже, что инструмент не может прочитать файл. Я выполнил аналогичную задачу с динамической библиотекой ссылок (сгенерирован из того же источника), и она сработала; в том, что мне удалось просмотреть код сборки с помощью w32dasm. Итак, мой вопрос: можно ли просмотреть код сборки статической библиотеки ссылок, как это можно сделать с динамической библиотекой ссылок? Если да, то какой будет правильный инструмент для использования, поскольку w32dasm не представляется правильным инструментом.
Возможный дубликат [Использование GCC для создания удобочитаемой сборки?] (Http://stackoverflow.com/questions/1289881/using-gcc-to-produce-readable-assembly) –
@usmcs Благодарим вас за решение моих английских орфографических ошибок – WileTheCoyot
@HansPassant делает objdump работу под окнами? – WileTheCoyot