Задать вопрос
@NeffiseX

Как скомпилировать .so файл в .c?

Я нашёл .so файл и мне нужно скомпилировать в .c
Но я не знаю как компилировать файлы обратно.
Спасибо за любой ответ!
  • Вопрос задан
  • 419 просмотров
Подписаться 1 Средний 2 комментария
Пригласить эксперта
Ответы на вопрос 3
CityCat4
@CityCat4 Куратор тега C
//COPY01 EXEC PGM=IEBGENER
Я нашол .so файл и мне нужно скомпилировать в .c

Чаво сделать-та? Эт типа "я нашел полкило фарша и мне надо получить обратно мясо, из которого он сделан"? Операция, обратная компиляции (а компиляция, чувак - это получение из исходного кода исполняемого модуля) - называется - внезапно - декомпиляцией. И она для .c файлов возможна в очень примитивной форме только в том случае, если в модуле "забыли" отладочную информацию. Во всех других случаях она попросту невозможна :D
Ответ написан
Комментировать
В общем случае никак. Существуют некоторые декомпиляторы, например в составе IDA Pro, но они восстанавливают лишь логику работы кода, а не исходники.
Ответ написан
old2ev
@old2ev
int main(){for(;;)fork();}
Сишный код получить точно не получится, максимум что можно - это дизассемблировать (https://ru.wikipedia.org/wiki/Objdump) и получить огрмный текст ассемблера на выходе, а за тем проходясь по меткам переписать алгоритм в Си.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы