<!-- HTML header for doxygen 1.8.17-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Arm NN: How to install ArmNN via our APT repository on Ubuntu&#39;s Launchpad</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 15rem; margin-top: .5rem; margin-left 13px"/>
  <td id="projectalign" style="padding-left: 0.9em;">
   <div id="projectname">
   &#160;<span id="projectnumber">24.05</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('md__installation_via_apt_repository.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="PageDoc"><div class="header">
  <div class="headertitle">
<div class="title">How to install ArmNN via our APT repository on Ubuntu's Launchpad </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><ul>
<li><a href="#introduction">Introduction</a></li>
<li><a href="#add-the-ubuntu-launchpad-ppa-to-your-system">Add the Ubuntu Launchpad PPA to your system</a></li>
<li><a href="#outline-of-available-packages">Outline of available packages</a><ul>
<li><a href="#x86_64">x86_64</a></li>
<li><a href="#arm64">arm64</a></li>
<li><a href="#armhf">armhf</a></li>
</ul>
</li>
<li><a href="#install-desired-combination-of-packages">Install desired combination of packages</a></li>
<li><a href="#installation-of-specific-abi-versioned-packages">Installation of specific ABI versioned packages</a></li>
<li><a href="#uninstall-packages">Uninstall packages</a></li>
</ul>
<h1>Introduction</h1>
<p>These are the step by step instructions on how to install the Arm NN core, TensorflowLite Parser as well as PyArmNN for x86_64, Arm64 and Armhf for Ubuntu 20.04. The packages will also be added to Debian Bullseye, their progress can be tracked here: <a href="https://tracker.debian.org/pkg/armnn">https://tracker.debian.org/pkg/armnn</a>.</p>
<h1>Add the Ubuntu Launchpad PPA to your system</h1>
<ul>
<li>Add the PPA to your sources using a command contained in software-properties-common package: ``` sudo apt install software-properties-common sudo add-apt-repository ppa:armnn/ppa sudo apt update ```</li>
<li>More information about our PPA and the Ubuntu Launchpad service can be found at <a href="https://launchpad.net/~armnn/+archive/ubuntu/ppa">launchpad.net</a> <h1>Outline of available packages</h1>
</li>
</ul>
<p>We provide a number of packages for each architecture; x86_64, aarch64 and armhf as outlined below.</p>
<p>ARMNN_MAJOR_VERSION: This is the ABI version of the Arm NN source that has been packaged based on <a class="el" href="include_2armnn_2_version_8hpp.html">include/armnn/Version.hpp</a>.</p>
<p>ARMNN_RELEASE_VERSION: This is the marketing release version based on the date source was released on github e.g. 20.11.</p>
<p>PACKAGE_VERSION: This is the version of the source package used to build the binaries packages from.</p>
<h2>x86_64</h2>
<ul>
<li>Runtime Packages <div class="fragment"><div class="line">libarmnn-cpuref-backend{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
<div class="line">libarmnntfliteparser{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
<div class="line">libarmnn{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
<div class="line">python3-pyarmnn_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
</div><!-- fragment --></li>
<li>Development Packages <div class="fragment"><div class="line">libarmnn-dev_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
<div class="line">libarmnntfliteparser-dev_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
</div><!-- fragment --></li>
<li>Dependency Packages (These are empty packages that provide a user-friendly name for other packages they will install) <div class="fragment"><div class="line">armnn-latest-all_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
<div class="line">armnn-latest-ref_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
</div><!-- fragment --></li>
</ul>
<h2>arm64</h2>
<ul>
<li>Runtime Packages <div class="fragment"><div class="line">libarmnn-aclcommon{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">libarmnn-cpuacc-backend{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">libarmnn-cpuref-backend{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">libarmnn-gpuacc-backend{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">libarmnntfliteparser{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">libarmnn{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">python3-pyarmnn_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
</div><!-- fragment --></li>
<li>Development Packages <div class="fragment"><div class="line">libarmnn-dev_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">libarmnntfliteparser-dev_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
</div><!-- fragment --></li>
<li>Dependency Packages (These are empty packages that provide a user-friendly name for other packages they will install) <div class="fragment"><div class="line">armnn-latest-all_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">armnn-latest-cpu_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">armnn-latest-cpu-gpu_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">armnn-latest-cpu-gpu-ref_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">armnn-latest-gpu_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
<div class="line">armnn-latest-ref_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_arm64.deb</div>
</div><!-- fragment --></li>
</ul>
<h2>armhf</h2>
<ul>
<li>Runtime Packages <div class="fragment"><div class="line">libarmnn-aclcommon{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">libarmnn-cpuacc-backend{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">libarmnn-cpuref-backend{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">libarmnn-gpuacc-backend{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">libarmnntfliteparser{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">libarmnn{ARMNN_MAJOR_VERSION}_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">python3-pyarmnn_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
</div><!-- fragment --></li>
<li>Development Packages <div class="fragment"><div class="line">libarmnn-dev_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">libarmnntfliteparser-dev_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
</div><!-- fragment --></li>
<li>Dependency Packages (These are empty packages that provide a user-friendly name for other packages they will install) <div class="fragment"><div class="line">armnn-latest-all_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">armnn-latest-cpu_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">armnn-latest-cpu-gpu_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">armnn-latest-cpu-gpu-ref_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">armnn-latest-gpu_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_armhf.deb</div>
<div class="line">armnn-latest-ref_{ARMNN_RELEASE_VERSION}-{PACKAGE_VERSION}_amd64.deb</div>
</div><!-- fragment --></li>
</ul>
<h1>Install desired combination of packages</h1>
<p>The easiest way to install all of the available packages for your systems architecture is to run the command:</p>
<div class="fragment"><div class="line">sudo apt-get install -y python3-pyarmnn armnn-latest-all</div>
<div class="line"># Verify installation via python:</div>
<div class="line">python3 -c &quot;import pyarmnn as ann;print(ann.GetVersion())&quot;</div>
<div class="line"># Returns &#39;{ARMNN_MAJOR_VERSION}.0.0&#39; e.g. 33.0.0</div>
</div><!-- fragment --><p>This will install PyArmNN and the three backends for Neon (CpuAcc), OpenCL (GpuAcc) and our Reference Backend. It will also install their dependencies including the arm-compute-library package along with the Tensorflow Lite Parser and it's dependency Arm NN Core. If the user does not wish to use PyArmNN they can go up a level of dependencies and instead just install the armnn-latest-all package: </p><div class="fragment"><div class="line"># Install ArmNN Core, CpuAcc Backend, GpuAcc Backend and Reference Backend as well as the TensorFlow Lite Parser:</div>
<div class="line"># (This will only install CpuAcc and GpuAcc Backends on arm64 and armhf architectures)</div>
<div class="line">sudo apt-get install -y armnn-latest-all</div>
<div class="line"> </div>
<div class="line"># Install ArmNN Core, CpuAcc Backend as well as the TensorFlow Lite Parser:</div>
<div class="line">sudo apt-get install -y armnn-latest-cpu</div>
<div class="line"> </div>
<div class="line"># Install ArmNN Core, CpuAcc Backend, GpuAcc Backend as well as the TensorFlow Lite Parser:</div>
<div class="line">sudo apt-get install -y armnn-latest-cpu-gpu</div>
<div class="line"> </div>
<div class="line"># Install ArmNN Core, GpuAcc Backend as well as the TensorFlow Lite Parser:</div>
<div class="line">sudo apt-get install -y armnn-latest-gpu</div>
<div class="line"> </div>
<div class="line"># Install ArmNN Core, Reference Backend as well as the TensorFlow Lite Parser:</div>
<div class="line">sudo apt-get install -y armnn-latest-ref</div>
</div><!-- fragment --><h1>Installation of specific ABI versioned packages</h1>
<p>Due to Debian Packaging requiring the pristine tarball from our Github release, the version on Launchpad may not align with the released version on Github depending on the complexity of newly added features. In order to check for the latest available Arm NN version use apt-cache search: </p><div class="fragment"><div class="line">apt-cache search libarmnn</div>
<div class="line"> </div>
<div class="line"># This returns a list of matching packages including versions from previous releases</div>
<div class="line">libarmnn-cpuref-backend23 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn-cpuref-backend24 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn-dev - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnntfliteparser-dev - Arm NN is an inference engine for CPUs, GPUs and NPUs # Note: removal of dash to suit debian naming conventions</div>
<div class="line">libarmnn-tfliteparser23 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnntfliteparser24 - Arm NN is an inference engine for CPUs, GPUs and NPUs # Note: removal of dash to suit debian naming conventions</div>
<div class="line">libarmnntfliteparser24.5 - Arm NN is an inference engine for CPUs, GPUs and NPUs # Note: removal of dash to suit debian naming conventions</div>
<div class="line">libarmnn23 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn24 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn25 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn30 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn-aclcommon23 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnnaclcommon24 - Arm NN is an inference engine for CPUs, GPUs and NPUs # Note: removal of dash to suit debian naming conventions</div>
<div class="line">libarmnn-cpuacc-backend23 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn-cpuacc-backend24 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn-gpuacc-backend23 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line">libarmnn-gpuacc-backend24 - Arm NN is an inference engine for CPUs, GPUs and NPUs</div>
<div class="line"> </div>
<div class="line"> </div>
<div class="line"># Export the ARMNN_MAJOR_VERSION to the latest visible e.g. libarmnn30 to allow installation using the below examples</div>
<div class="line">export ARMNN_MAJOR_VERSION=30</div>
<div class="line"> </div>
<div class="line"> # As the Tensorflow Lite Parser is now ABI stable it will have a different version to ARMNN_MAJOR_VERSION please choose latest version:</div>
<div class="line"> apt-cache search libarmnntfliteparser</div>
<div class="line"> # Returns e.g. libarmnntfliteparser24.5 so we then export that version, for reference this comes from include/armnnTfLiteParser/Version.hpp:</div>
<div class="line"> export TFLITE_PARSER_VERSION=24.5</div>
<div class="line"> </div>
<div class="line"> sudo apt-get install -y libarmnntfliteparser${TFLITE_PARSER_VERSION} libarmnn-cpuacc-backend${ARMNN_MAJOR_VERSION}</div>
</div><!-- fragment --><h1>Uninstall packages</h1>
<p>The easiest way to uninstall all of the previously installed packages is to run the command: </p><div class="fragment"><div class="line">sudo apt-get purge -y armnn-latest-all</div>
<div class="line">sudo apt autoremove -y armnn-latest-all</div>
</div><!-- fragment --> </div></div><!-- contents -->
</div><!-- PageDoc -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="buildguides.html">Build Guides</a></li>
    <li class="footer">Generated on Thu May 16 2024 09:31:54 for Arm NN by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
  </ul>
</div>
</body>
</html>
