4

我已经使用 pip install 安装了radare2,然后在python shell中我给出了以下代码行

Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import r2pipe
>>> r = r2pipe.open("/bin/ls")
radare2: invalid option -- '0'

我已经交叉检查 /bin/ls 是否可用。为什么我会收到此错误?

4

2 回答 2

3

这是我所做的:

  1. 转到https://github.com/radare/radare2,将项目克隆到我的笔记本电脑并安装它sys/install.sh(radare2 README 包含所有说明)

  2. pip install r2pipe(我在 Ubuntu 14.04 上有 python 2.7.6)

这是我从 python 控制台得到的输出:

>>> r2 = r2pipe.open("/bin/ls")
>>> print(r2.cmd("pd 10"))
;-- entry0:
            0x00404890      31ed           xor ebp, ebp
            0x00404892      4989d1         mov r9, rdx
            0x00404895      5e             pop rsi
            0x00404896      4889e2         mov rdx, rsp
            0x00404899      4883e4f0       and rsp, 0xfffffffffffffff0
            0x0040489d      50             push rax
            0x0040489e      54             push rsp
            0x0040489f      49c7c0d01e41.  mov r8, 0x411ed0
            0x004048a6      48c7c1601e41.  mov rcx, 0x411e60
            0x004048ad      48c7c7c02840.  mov rdi, 0x4028c0           ; "AWAVAUATUH..S..H...." @ 0x4028c0
>>> print(r2.cmdj("pd 10"))
r2pipe.cmdj.Error: No JSON object could be decoded
None

请确保您radare2正确安装。您可以尝试使用uninstall当前的radare2 并从头开始安装它,以防radare 方面出现一些版本问题。

于 2016-07-27T21:03:34.720 回答
0

对我来说,解决方案是从 git存储库而不是从过时的 Ubuntu 存储库安装radare2 。

安装就像运行一样简单sys/install.sh。请注意,这会覆盖任何现有的radare2 安装,您可能希望apt-get remove radare2在安装之前使用您的包管理器(例如)将其删除。

于 2016-12-02T08:37:39.470 回答