Skip to content

Build instruction and installation

yeggor edited this page Sep 10, 2025 · 12 revisions

We try to make the build process for all supported platforms very simple, just use the build script to automate this process.

Repository cloning and submodules updates

git clone [email protected]:binarly-io/efiXplorer.git
cd efiXplorer
git submodule update --init --recursive

Build script

./build.py
Usage: build.py [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  build-everything  Build plugin (efiXplorer) and loader (efiXloader)
  build-loader      Build efiXloader
  build-plugin      Build efiXplorer plugin

Example of build process:

# build only efiXplorer binaries
python3 build.py build-plugin --hexrays_sdk=/path/to/hexrays_sdk /path/to/idasdk
# build only efiXloader binaries
python3 build.py build-loader /path/to/idasdk
# build efiXplorer and efiXloader binaries
python3 build.py build-everything --hexrays_sdk=/path/to/hexrays_sdk /path/to/idasdk

Compilation with cmake

cmake -S . -B build -DIdaSdk_DIR=idasdk/src -DHexRaysSdk_ROOT_DIR=idasdk/src
cmake --build build --config Release

You can also check how it's done in build workflow.

Note

In the case of idasdk90 (beta 4 and above), hexrays.hpp is in idasdk90/include, so /path/to/hexrays_sdk should be the same as /path/to/idasdk.

Installation

efiXplorer

Copy compiled binaries of efiXplorer plugin and guids directory to <IDA_DIR>/plugins.

Note

When installing efiXplorer for IDA 9.0, only one library file should be used, e.g.: ln -s $(pwd)/efiXplorer/build/efiXplorer64.dylib ~/.idapro/plugins/efiXplorer.dylib

efiXloader

Copy builds/efiXloader64.dll to <IDA_DIR>/loaders.

Clone this wiki locally