编译与可移植性
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
目前为止, radare2的核心组件可在多种架构和系统上完成编译,但是大部分的开发工作主要还是在GNU/Linux上通过GCC完成,以及在MacOS X上通过clang完成。Radare则能够在多种系统和架构上完成编译(包括TCC和SunStudio)。
用户常希望能够在逆向工程中将radare作为debugger使用,目前,radare2的debugger层可以在Windows, GNU/Linux (Intel x86 and x86_64, MIPS, and ARM), OS X, FreeBSD, NetBSD, and OpenBSD (Intel x86 and x86_64)正常使用。
与radare2核心相比,调试器的可移植性受到的限制更多,如果调试器暂时没有移植到您喜欢的平台上,那么在编译radare2时可以使用--without-debugger选项禁用调试器层的功能。
要注意的是,radare2中的一些I/O插件会使用GDB,WinDbg或Wine作为后端,因此这些插件需要有这些第三方工具的存在才能正常工作。(在远程调试中,仅需要目标主机上存在这些工具)
若要在系统上使用 acr
和 GNU Make
进行编译的话(例如在*BSD系统上):
项目中也有一个脚本可以自动完成这些工作:
可以通过如下命令,借助其它的一些工具完成radare2的静态编译。
Radare2 仓库维护了一个 。
这个dockerfile同样被来自SANS的Remnux发行版所使用,可以在找到它