python-x27;t使用radare2打开文件:无效选项--';0';

python-x27;t使用radare2打开文件:无效选项--';0';,python,radare2,Python,Radare2,我已经使用pip安装了radare2,然后在pythonshell中我给出了以下几行代码 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"

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

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是否可用。为什么会出现此错误?

以下是我所做的:

  • 转到,将项目克隆到我的笔记本电脑上,并通过
    sys/install.sh
    (radare2自述包含所有说明)进行安装

  • pip安装r2pipe(我在ubuntu14.04上安装了python2.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
    。您可以尝试
    卸载您当前的radare2,并从头开始安装,以防radare端出现一些版本问题。

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


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

    您是如何安装radare2的?我使用“pip install r2pipe”安装的,当我只安装r2pipe时,它不起作用。一旦我安装了radare2,在对编辑的响应中,一切都如预期的那样工作:实际上,我特意选择单独包含链接,因为它使它更可见(也请参见其他答案)。。。