Выбрать главу

Take a look at the scripts in sys/, they are used to automate stuff related to syncing, building and installing r2 and its bindings.

The most important one is sys/install.sh. It will pull, clean, build and symstall r2 system wide.

Symstalling is the process of installing all the programs, libraries, documentation and data files using symlinks instead of copying the files.

By default it will be installed in /usr/local, but you can specify a different prefix using the argument --prefix.

This is useful for developers, because it permits them to just run 'make' and try changes without having to run make install again.

Cleaning up the source tree is important to avoid problems like linking to old objects files or not updating objects after an ABI change.

The following commands may help you to get your git clone up to date:

$ git clean -xdf

$ git reset --hard @~10

$ git pull

If you want to remove previous installations from your system, you must run the following commands:

$ ./configure --prefix=/usr/local

$ make purge

Currently the core of radare2 can be compiled on many systems and architectures, but the main development is done on GNU/Linux with GCC, and on MacOS X with clang. Radare is also known to compile on many different systems and architectures (including TCC and SunStudio).

People often want to use radare as a debugger for reverse engineering. Currently, the debugger layer can be used on Windows, GNU/Linux (Intel x86 and x86_64, MIPS, and ARM), OS X, FreeBSD, NetBSD, and OpenBSD (Intel x86 and x86_64)..

Compared to core, the debugger feature is more restrictive portability-wise. If the debugger has not been ported to your favorite platform, you can disable the debugger layer with the --without-debugger configure script option when compiling radare2.

Note that there are I/O plugins that use GDB, WinDbg, or Wine as back-ends, and therefore rely on presence of corresponding third-party tools (in case of remote debugging - just on the target machine).

To build on a system using acr and GNU Make (e.g. on *BSD systems):

$ ./configure --prefix=/usr

$ gmake

$ sudo gmake install

There is also a simple script to do this automatically:

$ sys/install.sh

You can build radare2 statically along with all other tools with the command:

$ sys/static.sh

You can use meson + ninja to build:

$ sys/meson.py --prefix=/usr --shared --install

If you want to build locally:

$ sys/meson.py --prefix=/home/$USER/r2meson --local --shared --install

Radare2 repository ships a Dockerfile that you can use with Docker.

This dockerfile is also used by Remnux distribution from SANS, and is available on the docker registryhub.

./configure --prefix=/old/r2/prefix/installation

make purge

Radare2 relies on the Meson build system generator to support compilation on all platforms, including Windows. Meson will generate a Visual Studio Solution, all the necessary project files, and wire up the Microsoft Visual C++ compiler for you.

tip You can download nightly binaries from https://ci.appveyor.com/project/radareorg/radare2/history. Be sure to download only from master branch!

   • Visual Studio 2015 (or higher)

   • Python 3

   • Meson

   • Git

Visual Studio must be installed with a Visual C++ compiler, supporting C++ libraries, and the appropriate Windows SDK for the target platform version.

   • In the Visual Studio 2015 installer, ensure Programming Languages > Visual C++ is selected

   • In the Visual Studio 2017+ installers, ensure the Desktop development with C++ workload is selected

If you need a copy of Visual Studio, the Community versions are free and work great.

   • Download Visual Studio 2015 Community (registration required)

   • Download Visual Studio 2017 Community

It is strongly recommended you install Conda — a Python environment management system — when working with Python on the Windows platform. This will isolate the Radare2 build environment from other installed Python versions and minimize potential conflicts.

   1. Download the appropriate Conda (Python 3.x) for your platform (https://conda.io/miniconda.html)

   2. Install Conda with the recommended defaults

Follow these steps to create and activate a Conda environment named r2. All instructions from this point on will assume this name matches your environment, but you may change this if desired.

   1. Start > Anaconda Prompt

   2. conda create -n r2 python=3

   3. activate r2

Any time you wish to enter this environment, open the Anaconda Prompt and re-issue activate r2. Conversely, deactivate will leave the environment.

   1. Enter the Radare2 Conda environment, if needed (activate r2)

   2. Download https://github.com/mesonbuild/meson/archive/master.zip

   3. pip install \path\to\downloaded\master.zip

   4. Verify Meson is version 0.48 or higher (meson -v)

All Radare2 code is managed via the Git version control system and hosted on GitHub.

Follow these steps to install Git for Windows.

   1. Download Git for Windows (https://git-scm.com/download/win)

As you navigate the install wizard, we recommend you set these options when they appear: * Use a TrueType font in all console windows * Use Git from the Windows Command Prompt * Use the native Windows Secure Channel library (instead of OpenSSL) * Checkout Windows-style, commit Unix-style line endings (core.autocrlf=true) * Use Windows' default console window (instead of Mintty)