System requirements

  • OS: Ubuntu 24.04.3 LTS
  • Required APT packages
      build-essential cmake ninja-build
    
  • Required Python packages
      numpy tomli capstone cxxfilt pyelftools
    
  • Docker: Optional, recommended for consistent build environments

Note
For non-Ubuntu systems, it is recommended to use the official Docker image to ensure full compatibility.

Installation

There are two ways to install SDK:

  1. Install from SDK Package
    SDK package URL will be provided separately.
    wget <URL_to_sdk_xxx.tar.xz>
    tar xvf sdk_xxx.tar.xz
    cd sdk_xxx
    ./install.sh
    

    Note
    During installation, device driver(mxdriver) will be installed.
    A system reboot is required to complete the installation and activate the driver.

  2. Use Docker
    • Step 1. Prepare Docker Container
      Obtain prebuilt container from Docker Hub. Ensure you have a correct repository & tag name.
      Example:

        # Usage: docker pull <repository name>:<tag name>
        docker pull xcenadev/sdk:latest
      

      Alternatively, you can build the image manually using the Dockerfile provided in the SDK repository (dockerfiles/README).

    • Step 2. Install driver on host

      Skip this step if you’re planning to run emulator

      If you have the SDK package:

        wget <URL_to_sdk_xxx.tar.xz>
        tar -xvf sdk_xxx.tar.xz
        cd sdk_xxx
        cd driver
        sudo ./install.sh
        reboot
      

      Or install directly from the driver repository:

        git clone git@github.com:metisx-dev/mxdriver.git
        cd mxdriver
        sudo ./install.sh
        reboot
      
    • Step 3. Run Docker Container
      To ensure compatibility with the driver, you must run the container in privileged mode.
      Example:

        docker run -it --privileged --name xcena_sdk xcenadev/sdk:1.4.0
      

      If you want to run emulator in Docker, run with KVM support, SYS_ADMIN capability, and user option (--device /dev/kvm, --cap-add=SYS_ADMIN, -e USER=$USER).

      Example:

        docker run -it --name xcena_sdk --device=/dev/kvm --cap-add=SYS_ADMIN -e USER=$USER xcenadev/sdk:1.4.0
      

Table of contents