Audience

Zebra Barcode Scanner SDK for Linux installation and uninstallation is found challenging to some users because Linux images are built based on custom configurations. Apart from that, Linux distributions derive mainly from Debian and Redhat, and therefore two different installation packages (.deb and .rpm) are available too. Moreover, based on the C++ compiler version on the development environment, different binaries are to be used too.

This article will help you find the right Zebra Barcode Scanner SDK for your Linux system and whether you should use .deb or .rpm or the 32 / 64-bit packages. You can also find more detailed information in our developer guide. Note that installing source packages is NOT covered in this document.

Guide

Make sure you are aware of the target platform to install SDK. You may query platform information by running the command:

# uname -a

The latest versions of the following Linux variants are supported by the SDK. Make sure your platform is on the list:

  • Ubuntu
  • Debian
  • Suse Linux Enterprise Server
  • RedHat
  • CentOS
  • OpenSuse
  • Detailed information on supported versions is found in the developer guide 

Release notes

  • If you are using an earlier build of the SDK, please read release notes for the latest changes and how they affect you.
  • If you are planning to use the SDK for the first time, please refer release notes to make sure a list of features available, supported platforms, etc.

Package file naming convention

Before downloading packages, you should aware of the system, and based on that, the correct installer should be selected. Following are deciding factors:

Linux derivative

  • Processor architecture
  • Bit configuration
  • C++ compliance level

Download package names follow a naming convention which is helpful to select the correct package based on above deciding factors as follows:

<product><version><package_type><processor_architecture><bit_configuration><c++_complience>

e.g.: SDK_for_Linux_v4.4.1-2_Debian_Packages_x86_32bit_C11.zip

Selecting correct SDK package file based on Linux derivative

Zebra provides installer packages of types .deb and .rpm for Linux variants derived from Debian (such as Ubuntu, Debian) and Red Hat (such as CentOS, SLES, OpenSUSE, Red Hat, Ubuntu) respectively.

Selecting the package based on processor architecture

Mainstream releases support x86 architecture only.
Therefore, this factor is currently not available but is worth to be aware of in case Zebra decides to publish such builds in the future.
However, ARM builds can be provided on request by tech support contact  

Selecting correct SDK package file based on Linux bit configuration

Zebra provides installer packages for both 32bit as well as 64bit systems of Linux operating systems. However, latest versions of Linux releases support only 64bit systems and so as Zebra SDKs.

Selecting correct SDK package file based on compiler compliance level

Zebra provides installer packages for C++98 as well as C++11 compliance levels and based on development environment configuration, the correct package should be selected.
If you are not sure of the compliance level, please refer next section on “Verify C++ compliance level”.

Verify C++ compliance level

To verify compliance level, query GCC version first by issuing the command:

# gcc -v

Capture the compliance level based on the version by referring to: https://gcc.gnu.org/projects/cxx-status.html

Download the software

Once you decide on the required packages based on the above deciding factors, you may proceed with downloading them.
The latest installers of Zebra Barcode Scanner SDK is found in Zebra Support Central

Installing RPM Packages
 

    1. Check for existing CoreScanner and SDK installations using the rpm command -qa option:

# rpm -qa | grep zebra

For example, list packages installed in a CentOS/Suse RPM based distribution:

[root@localhost]# rpm -qa | grep zebra zebra-scanner-devel-3.0.0-0 zebra-scanner-javapos-3.0.0-0 zebra-scanner-corescanner-3.0.0-0

    2. Remove existing CoreScanner and SDK packages using the rpm command -e option.

Since the zebra-scanner-corescanner package is required for JPOS and API development packages, remove this after uninstalling the other two packages.

For example:

# rpm -e zebra-scanner-javapos-2.0.0-0
# rpm -e zebra-scanner-devel-2.0.0-0
# rpm -e zebra-scanner-corescanner-2.0.0-0 

   3. Install new packages using the rpm command -i option. Install the CoreScanner packages first to avoid possible package dependency issues.For example:

# rpm -i zebra-scanner-corescanner-2.0.0-0-sles11_sp2-i586.rpm
# rpm -i zebra-scanner-devel-2.0.0-0-sles11_sp2-i586.rpm
# rpm -i zebra-scanner-javapos-2.0.0-0-sles11_sp2-i586.rpm 

Installing Debian Packages

    1. Check for existing CoreScanner and SDK installations using the dpkg command -l option:

# dpkg -l | grep zebra

For example, list of packages installed in an Ubuntu distribution:

ii zebra-scanner-corescanner     2.0.0-0 amd64   Zebra Technologies Linux Corescanner Daemon

ii zebra-scanner-devel           2.0.0-0 amd64   Development files for Zebra Technologies Linux Corescanner

ii zebra-scanner-javapos         2.0.0-0 amd64   JavaPOS 1.13 libraries for Zebra Technologies Linux Corescanner Daemon

    2. Remove existing CoreScanner and SDK packages using the dpkg command -r option.
Since the zebra-scanner corescanner package is required for JavaPOS and API development packages, remove this after uninstalling the other two packages.

For example:

# dpkg -r zebra-scanner-javapos

Dependent packages

  • SDK dependencies should be satisfied during the installation process and if they are not available in the system, you may install them separately.
  • Due to the configurable nature of Linux distributions, this document could not cover such details.

Verifying installation using SDK sample application   

  • SDK package includes a few test applications and out of them, SDK sample application is utilized here to verify CoreScanner (Linux Barcode Scanning Daemon) functionality.
  • To run this application, use the change directory (cd) command to change to the /usr/share/zebra-scanner/samples/gui-app directory and then run the corescanner-gui-app executable file.

Verify installation using Install Verifier Application (IVA)

  1. Download the source tarball from Zebra Support and Downloads page: https://www.zebra.com/us/en/support-downloads/software/developer-tools/scanner-sdk-for-linux.html
  2. Build, install, configure, run, verify for presence and functionality of components.