EVA SDK Installation Guide for ARM
  • 22 Jul 2022
  • 10 Minutes to read
  • Contributors
  • Dark

EVA SDK Installation Guide for ARM

  • Dark

Manual Rev.: 1.2

Revision Date: July xx, 2022

Part Number: 50M-00039-1010



Copyright © 2022 ADLINK Technology, Inc. This document contains proprietary information protected by copyright. All rights are reserved. No part of this manual may be reproduced by any mechanical, electronic, or other means in any form without prior written permission of the manufacturer.


The information in this document is subject to change without prior notice in order to improve reliability, design, and function and does not represent a commitment on the part of the manufacturer. In no event will the manufacturer be liable for direct, indirect, special, incidental, or consequential damages arising out of the use or inability to use the product or documentation, even if advised of the possibility of such damages.


Product names mentioned herein are used for identification purposes only and may be trademarks and/or registered trademarks of their respective companies.

Revision History





Initial release



Release for EVA SDK R3.5


1.2Release for EVA SDK R3.8
Support ROS Foxy Fitzroy.

1 Introduction

This chapter describes the installation of the following software.

  • Gstreamer RTSP Plugin and Gstreamer Python Plugin
  • Hikrobot software
  • FLIR software

The following table lists the specified software versions.




Ubuntu 18.04 LTS AArch64









Hikrobot MVS


FLIR Spinnaker SDK


Foxy Fitzroy

NVIDIA® JetPack includes the following software versions.



NVIDIA® DeepStream










The following table lists the estimated required installation space when installing the software under Ubuntu 18.04 aarch64. The required installation space includes the install file (.deb, .run) package size.


Required Installation Space

Gstreamer Python Plugin



430MB (deb file: 90MB)

Hikrobot MVS

280MB (zip file: 130MB)

FLIR Spinnaker

260MB (gz file: 62MB)


40MB (run file: 10MB)

ROS 2 Foxy Fotzroy

9GB (including building files and required software)

For more details about ADLINK EVA, refer to https://eva-support.adlinktech.com.

2 Installing the GStreamer RTSP Plugin

2.1 Install RTSP plugin for GStreamer (Optional)

If data will be sent over via an RTSP server, the system must have the RTSP plugin for GStreaming installed. Use the following command to install the RTSP plugin.

$ sudo apt install gstreamer1.0-rtsp

Use the following command to verify that the plugin has been installed.

$ gst-inspect-1.0 rtspclientsink

Screenshot from 2021-02-26 15-35-11

3 Installing the GStreamer Python Plugin

GStreamer is built on the GLib and GObject portable libraries which are compatible with Python. Gstreamer can be used in two ways: by writing GStreamer applications, or by writing GStreamer Python elements that can be scanned by the GStreamer Python plugin loader and registered as a plugin in GObject. The following sections describe how to install the GStreamer Python plugin.

3.1 Install the Required Packages

$ sudo apt-get update

$ sudo apt-get install python3-pip python-gi-dev python3-gst-1.0

If your platform is using Python 2.7, change the python3-gst-1.0 package to python-gst-1.0.

3.2 Install the GStreamer Python Plugin Loader

Currently, the Debian GStreamer Python package includes GObject Introspection files but does not include the GStreamer Python plugin loader, requiring the use of a GStreamer Python application.

GStreamer Python plugins cannot be scanned and registered in applications like gst-launch-1.0 or gst-inspect-1.0, so a GStreamer Python plugin loader must be built.

1. Clone the GStreamer gst-python repository

$ git clone -b 1.14 https://github.com/GStreamer/gst-python.git

2. Install the build tool 

$ pip3 install --user scikit-build

$ pip3 install --user meson ninja

When using Python 2.7, call pip instead of pip3.

3. Add the Python binary search path

$ export PATH=~/.local/bin:$PATH

If installing the meson package via apt installs an old version of meson, make sure the meson binary installed by pip3 can be found by first specifying where to access the Python binary.

4. Build and install gst-python 

$ cd gst-python

$ meson _build -Dprefix=$PWD/local

$ ninja -C _build install

At this point, it is important not to overwrite the previously installed GStreamer Python files which can possibly have a negative impact on the system. Instead, install GStreamer Python to a local folder and then copy only the required files.

5. Copy GStreamer Python plugin loader

The previous build steps generated two kinds of files, GObject introspection files and the GStreamer Python plugin loader in the following directory structure.

Gst-python install directory structure 

 └── lib
         ├── python3.6
         │     └── site-packages
         │             └── gi
         │                     └── overrides
         │                             ├── _gi_gst.cpython-36m-x86_64-linux-gnu.so
         │                             ├── GstPbutils.py
         │                             └── Gst.py
         └── aarch64-linux-gnu
                  └── gstreamer-1.0

Copy libgstpython.so to the GStreamer system plugin folder, or other plugin folders as necessary.

Copy the required library 

$ sudo cp local/lib/aarch64-linux-gnu/gstreamer-1.0/libgstpython.so /usr/lib/aarch64-linux-gnu/gstreamer-1.0

6. Install the required Python packages 

$ sudo apt-get install python3-numpy  libopencv-python

$ sudo pip3 install boto3


The following message can be ignored when executing pip with sudo.

7. Check for installed Python plugins

$ cd .. # Stay in gst-python will cause python local wrong gi module in gst-python folder

$ GST_DEBUG=pyplugin:7 gst-inspect-1.0 python

If the Python plugins are found, the installation has been successful.

7 Installing Hikrobot Software (Optional)

If you are not using a Hikrobot camera, this chapter can be skipped.

If Hikrobot cameras are used, the Hikrobot MVS Software must be installed.

Download the Hikrobot installer from: https://en.hikrobotics.com/machinevision/service/download?module=0

The recommended software versions are:

  • Version: Machine Vision Industrial Camera SDK V2.0.0 (Linux ARM)
  • Operating System: ARM 64-bit

Run the following commands, and then follow the on-screen instructions to complete the installation process.

$ unzip "MVS_2.0.0_20200312(Linux ARM).zip"

$ cd "MVS_2.0.0_20200312(Linux ARM)"

$ tar xvfz MVS-2.0.0_aarch64_20200312.tar.gz

$ cd MVS-2.0.0_aarch64_20200312

$ sudo ./setup.sh

After installation, connect the camera and run the MVS software to verify that it works. The file should be at /opt/MVS/bin.


The above installation steps are for reference only. For more specific installation instructions, refer to the official documentation, or contact Hikrobot at https://en.hikrobotics.com/contactus.

5 Installing FLIR Software (Optional)

This chapter covers the installation of required software for use with FLIR cameras.

If you are not using a FLIR camera, this chapter can be skipped.

5.1 Uninstall Non-specified Version

If the system has a non-specified version of the FLIR Spinnaker software, run the uninstall script under the Spinnaker installation package to remove it.

$ cd spinnaker-<version>

$ sudo ./remove_spinnaker_arm.sh

5.2 Install FLIR Spinnaker Software

If FLIR cameras are used, the FLIR Spinnaker Software Suite for Windows must be installed.

Download the FLIR Spinnaker installer from: https://www.flir.asia/products/spinnaker-sdk/

The recommended software versions are:

  • Version: spinnaker-
  • Operating System: Linux 64-bit

Run the following commands and then follow the on-screen instructions to complete the installation.

$ tar xvfz spinnaker-

$ cd spinnaker-

$ sudo sh install_spinnaker_arm.sh

$ sudo reboot


During installation, you MUST enter a username to add a new member.

For example, enter ‘adlink’ for the user name.

Screenshot from 2021-02-19 11-46-39

After installing, insert the camera device and run the following command to verify.

$ spinview


For more information, refer to https://www.flir.com/support-center/iis/machine-vision/application-note/using-spinnaker-on-arm-and-embedded-systems/

If you have any questions, go to https://www.flir.com/.

6 Installing ONNX Runtime

This chapter covers the installation of required software for use with the ONNX Runtime inference engine.

Download ONNX Runtime v1.8.0 for python 3.6 from https://elinux.org/Jetson_Zoo#ONNX_Runtime, or https://nvidia.app.box.com/s/bfs688apyvor4eo8sf3y1oqtnarwafww

Run the following commands to install ONNX Runtime.

$ pip3 install --upgrade pip cython protobuf

$ pip3 install numpy==1.19.4

$ pip3 install pillow

$ cd Downloads

$ pip3 install onnxruntime_gpu-1.8.0-cp36-cp36m-linux_aarch64.whl

7 Installing the ROS2 Foxy Fitzroy(Optional)

This chapter covers the installation of required software for use with ROS.

If you are not using ROS 2, this chapter can be skipped.

  1. System setup
    Upgrade cmake
    ROS 2 Foxy Fitzroy requires cmake version 3.11.0 or higher. If your cmake version is older, it must be upgraded.
    The following is an example of building and installing cmake version 3.13.5.

    $ sudo apt remove --purge --auto-remove cmake

    $ wget https://github.com/Kitware/CMake/releases/download/v3.13.5/cmake-3.13.5.tar.gz

    $ tar xvf cmake-3.13.5.tar.gz

    $ cd cmake-3.13.5/

    $ ./configure

    ./bootstrap --system-curl

    $ make -j$(nproc)

    $ sudo make install

    $ sudo ln -s /usr/local/bin/cmake /usr/bin/cmake

    Add the ROS 2 apt repository

    $ sudo apt update && sudo apt install curl gnupg2 lsb-release

    $ sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key  -o /usr/share/keyrings/ros-archive-keyring.gpg

    $ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

    Install development tools and ROS tools

    $ sudo apt update && sudo apt install -y build-essential cmake git libbullet-dev python3-colcon-common-extensions python3-flake8 python3-pip python3-pytest-cov python3-rosdep python3-setuptools python3-vcstool wget

    $ python3 -m pip install -U argcomplete flake8-blind-except flake8-builtins  flake8-class-newline flake8-comprehensions flake8-deprecated flake8-docstrings flake8-import-order flake8-quotes pytest-repeat pytest-rerunfailures pytest

    $ sudo apt install --no-install-recommends -y libasio-dev libtinyxml2-dev

    $ sudo apt install --no-install-recommends -y libcunit1-dev

  2. Get ROS 2 code

    $ mkdir -p ~/ros2_foxy/src

    $ cd ~/ros2_foxy

    $ wget https://raw.githubusercontent.com/ros2/ros2/foxy/ros2.repos

    $ vcs import src < ros2.repos

  3. Install dependencies using rosdep

    $ sudo rosdep init

    $ rosdep update

    $ rosdep install --from-paths src --ignore-src -y --skip-keys "fastcdr rti-connext-dds-5.3.1 urdfdom_headers"

  4. Build the code in the workspace

    $ cd ~/ros2_foxy/

    $ colcon build --symlink-install

  5. Environment setup
    $ . ~/ros2_foxy/install/local_setup.bash


The environment variables are removed when closing the command prompt or terminal.

For more information, refer to https://docs.ros.org/en/foxy/Installation/Ubuntu-Development-Setup.html.

7.1 Verify ROS 2

Open a terminal, source the setup file and then run a C++ talker:

$ . ~/ros2_foxy/install/local_setup.bash

$ ros2 run demo_nodes_cpp talker

In another terminal, source the setup file and then run a Python listener:

$ . ~/ros2_foxy/install/local_setup.bash

$ ros2 run demo_nodes_py listener

You should see the ‘talker’ saying that it’s Publishing messages and the ‘listener’ saying I heard those messages.

8.1 Remove Previous ADLINK EVA SDK Versions

If you have a previously installed version of the ADLINK EVA SDK, remove it with the following command:

$ sudo /opt/adlink/eva/uninstall.sh

If the install path has been changed, specified the correct path with:

$ sudo [INSTALL_DIR]/uninstall.sh

INSTALL_DIR enters the specified path.


When uninstalling the ADLINK EVA SDK, the folder specified with INSTALL_DIR will be deleted.

8.2 Run the Required Commands for EVA IDE

$ sudo ln -snf /usr/share/fonts/truetype/dejavu /lib/fonts

$ sudo apt-get install graphviz

$ sudo systemctl stop nvargus-daemon

$ sudo systemctl disable nvargus-daemon

8.3 Download and Install the ADLINK EVA SDK

Download the ADLINK EVA SDK installation package and copy it to your Linux Ubuntu 18.04 aarch64 system.

Change mode and run install package

$ chmod +x EVA_SERP_xxxx.run

$ sudo ./EVA_SERP_xxxx.run

xxxx is the version and the install path is /opt/adlink/eva.

Select the EVA SDK plugins to be installed.

Select GStreamer plugin to install. (Separate with comma, for example, “2,3,4”).

  1. All plugins
  2. TensorRT inference plugin
  3. Pylon plugin
  4. HIK plugin
  5. FLIR plugin

For example, to install the TensorRT inference plugin and the Pylon plugin, enter 3,4. To install all plugins, including the TensorRT inference plugin, the Pylon plugin, the Hik plugin and the Flir plugin, enter 1.


  1. TensorRT is only supported on NVIDIA platforms.
  2. Before installing the EVA SDK, you must ensure the corresponding software packages have been installed. If the plugins are installed but there are no corresponding libraries, when the GStreamer command runs for the first time, it will display messages to warn that the related libraries are missing, and the installed plugins will not work.

Other commands can be used to install the ADLINK EVA SDK.

  • Use the -s command option to install all the plugins in silent mode. The install path is /opt/adlink/eva.

$ sudo ./EVA_SERP_xxxx.run -- -s

8.4 Download and Install the ADLINK EVA SDK IDE and Samples (Optional)

If you are not using the EVA SDK IDE and samples, this chapter can be skipped.

Download the ADLINK EVA SDK installation package and copy it to your Linux Ubuntu 18.04 AArch64 system.

Change mode and run install package

$ chmod +x EVA_IDE_xxxx.run

$ sudo ./EVA_IDE_xxxx.run

xxxx is the version and the install path is /opt/adlink/eva.

8.5 Set Environment Variables

Set environment variables for the ADLINK EVA SDK

$ source /opt/adlink/eva/scripts/setup_eva_envs.sh

The script will set up the environment variables of the following installed software.

  • Pylon

If the software has no corresponding libraries, the script will not set up the corresponding environment variables.


The environment variables are removed when closing the command prompt or terminal.

Safety Instructions

Read and follow all instructions marked on the product and in the documentation before you operate your system. Retain all safety and operating instructions for future use.

  • Please read these safety instructions carefully.
  • Please keep this User‘s Manual for later reference.
  • Read the specifications section of this manual for detailed information on the operating environment of this equipment.
  • When installing/mounting or uninstalling/removing equipment, turn off the power and unplug any power cords/cables.
  • To avoid electrical shock and/or damage to equipment:
    • Keep equipment away from water or liquid sources.
    • Keep equipment away from high heat or high humidity.
    • Keep equipment properly ventilated (do not block or cover ventilation openings).
    • Make sure to use recommended voltage and power source settings.
    • Always install and operate equipment near an easily accessible electrical socket-outlet.
    • Secure the power cord (do not place any object on/over the power cord).
    • Only install/attach and operate equipment on stable surfaces and/or recommended mountings.
    • If the equipment will not be used for long periods of time, turn off and unplug the equipment from its power source.
  • Never attempt to fix the equipment. Equipment should only be serviced by qualified personnel.

Getting Service

Ask an Expert: http://askanexpert.adlinktech.com

ADLINK Technology, Inc.
Address:No. 66, Huaya 1st Rd., Guishan District,
Taoyuan City 333411, Taiwan
Tel: +886-3-216-5088
Fax: +886-3-328-5706
Email: service@adlinktech.com

Ampro ADLINK Technology, Inc.
Address:6450 Via Del Oro
San Jose, CA 95119-1208, USA
Tel: +1-408-360-0200
Toll Free:+1-800-966-5200 (USA only)
Fax: +1-408-600-1189
Email: info@adlinktech.com

ADLINK Technology (China) Co., Ltd.
Address:300 Fang Chun Rd., Zhangjiang Hi-Tech Park, Pudong New Area
Shanghai, 201203 China
Tel: +86-21-5132-8988
Fax: +86-21-5132-3588
Email: market@adlinktech.com

ADLINK Technology GmbH
Address:Hans-Thoma-Straße 11
D-68163 Mannheim, Germany
Tel: +49-621-43214-0
Fax: +49-621 43214-30
Email: germany@adlinktech.com

Please visit the Contact page at www.adlinktech.com for information on how to contact the ADLINK regional office nearest you.

Was this article helpful?