Как исправить "r_cons.h/r_types.h: нет такого файла или каталога" при установке r2dec
Я пытаюсь установить плагин r2dec для radare2. Сбой сборки из-за отсутствия некоторых файлов.
Сначала я выполнил следующие команды
$r2pm init
затем
$r2pm init
Затем я попытался установить его с:
$ r2pm -i r2dec
Когда сборка не удалась, я установил npm, потому что в комментарии к этому ответу предлагалось это /questions/33856615/kak-pravilno-ustanovit-i-zapustit-dekompilyator-radare2-r2snow/33856631#33856631
$ sudo apt install nodejs
Ожидаемый результат будет успешной сборкой.
фактический результат следующий:
Установить Готово для r2dec make: Вход в каталог '/home/me/.local/share/radare2/r2pm/git/r2dec-js/p' cc -I/home/me/.local/share/radare2/prefix/include -g -O3 -I/usr/include/libr -I./duktape -L/home/me/.local/share/radare2/prefix/lib -lr_core -lr_config -lr_debug -lr_bin -lr_anal -lr_bp -lr_egg -lr_asm -lr_lang -lr_parse -lr_flag -lr_cons -lr_reg -lr_search -lr_syscall -lr_fs -lr_io -lr_socket -lr_magic -lr_crypto -lr_hash -lr_util -ldl -lmd-duk-duk-dcd.c -o core_pdd.so
duktape / duk_console.c: 13: 20: фатальная ошибка: r_cons.h: нет такого файла или каталога
[..]
core_pdd.c: 8: 21: фатальная ошибка: r_types.h: нет такого файла или каталога
[..]
компиляция прекращена. Makefile:10: рецепт для цели 'all' не выполнен make: *** [all] Ошибка 1 make: Выход из каталога '/home/me/.local/share/radare2/r2pm/git/r2dec-js/p'
3 ответа
Libzip - одно из требований для установки r2dec. По какой-то причине я не могу найти веб-страницу, объясняющую зависимость, но я помню, что видел ее. libzip уже был установлен, но пакет "dev", содержащий заголовки библиотеки, не был. Похоже, установка libzip-dev решила проблему.
Если вы устанавливаете радар2 с помощью менеджера пакетов, у вас может не быть заголовочных файлов для самого радара2 (а если вы используете репозиторий github, я думаю, установщик r2pm не указывает на него или что-то в этом роде?).
Вам нужно всего лишь установитьradare2-devel....или любой другой пакет для вашей системы, тогда r2dec соберет все нормально. Соответствующие заголовки являются частью этого пакета.
Для меня в Fedora
dnf install radare2-devel