Official TensorFlow for Jetson Nano!

Our official TensorFlow release for Jetson Nano!

Python 3.6+JetPack4.4

sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev liblapack-dev libblas-dev gfortran
sudo apt-get install python3-pip
sudo pip3 install -U pip
sudo pip3 install -U pip testresources setuptools numpy==1.16.1 future==0.17.1 mock==3.0.5 h5py==2.9.0 keras_preprocessing==1.0.5 keras_applications==1.0.8 gast==0.2.2 futures protobuf pybind11
# TF-2.x
$ sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v44 tensorflow==2.2.0+nv20.8
# TF-1.15
$ sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v44 ‘tensorflow<2’

Python3.6+JetPack4.3

$ sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev
$ sudo apt-get install python3-pip
$ sudo pip3 install -U pip
$ sudo pip3 install -U numpy grpcio absl-py py-cpuinfo psutil portpicker six mock requests gast h5py astor termcolor protobuf keras-applications keras-preprocessing wrapt google-pasta
# TF-2.x
$ sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v43 tensorflow==2.1.0+nv20.3
# TF-1.15
$ sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v43 tensorflow==1.15.2+nv20.3

DL frameworks - https://developer.nvidia.com/deep-learning-frameworks
Download - https://developer.nvidia.com/embedded/downloads#?search=tensorflow
Installation guide - https://docs.nvidia.com/deeplearning/frameworks/install-tf-jetson-platform/index.html
Release note - https://docs.nvidia.com/deeplearning/dgx/install-tf-xavier-release-notes/index.html

^_^

7 Likes

Do you by any chance have plans for a Pytorch release for the Nano. It is a great platform, but I’ve been trying to follow the script here without any luck: https://gist.github.com/dusty-nv/ef2b372301c00c0a9d3203e42fd83426.

2 Likes

Does Jetson Nano support Windows to write codes and flash into the kit except for Linux ?

Hi, blarish

Do you mind to file another topic specify for the pyTorch issue?
We will check pyTorch functionality and update information with you later.

Thanks.

Hi, 40837090

May I know what kind of environment do you want to use?

We don’t provide an IDE tool for cross-compiling a Jetson application on Windows.
But you should be able to link the device with ssh directly.

Thanks.

[/quote]

Absolutely. After I posted this comment, I actually noticed there was a separate PyTorch thread, so I will move my comments there. Very sorry I didn’t do that in the first place. Thanks for the quick response!

error installing using above tensorflow command

[8/8] Cythonizing /tmp/easy_install-bju22v8k/Cython-0.29.6/Cython/Tempita/_tempita.py
    Unable to find pgen, not compiling formal grammar.
    warning: no files found matching 'Doc/*'
    warning: no files found matching '*.pyx' under directory 'Cython/Debugger/Tests'
    warning: no files found matching '*.pxd' under directory 'Cython/Debugger/Tests'
    warning: no files found matching '*.pxd' under directory 'Cython/Utility'
    warning: no files found matching 'pyximport/README'
    /tmp/easy_install-bju22v8k/Cython-0.29.6/Cython/Plex/Scanners.c:19:10: fatal error: Python.h: No such file or directory
     #include "Python.h"
              ^~~~~~~~~~
    compilation terminated.
    Traceback (most recent call last):
      File "/usr/lib/python3.6/distutils/unixccompiler.py", line 118, in _compile
        extra_postargs)
      File "/usr/lib/python3.6/distutils/ccompiler.py", line 909, in spawn
        spawn(cmd, dry_run=self.dry_run)
      File "/usr/lib/python3.6/distutils/spawn.py", line 36, in spawn
        _spawn_posix(cmd, search_path, dry_run=dry_run)
      File "/usr/lib/python3.6/distutils/spawn.py", line 159, in _spawn_posix
        % (cmd, exit_status))
    distutils.errors.DistutilsExecError: command 'aarch64-linux-gnu-gcc' failed with exit status 1
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/usr/lib/python3.6/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/bdist_egg.py", line 172, in run
        cmd = self.call_command('install_lib', warn_dir=0)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/bdist_egg.py", line 158, in call_command
        self.run_command(cmdname)
      File "/usr/lib/python3.6/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/install_lib.py", line 11, in run
        self.build()
      File "/usr/lib/python3.6/distutils/command/install_lib.py", line 109, in build
        self.run_command('build_ext')
      File "/usr/lib/python3.6/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/build_ext.py", line 78, in run
        _build_ext.run(self)
      File "/usr/lib/python3.6/distutils/command/build_ext.py", line 339, in run
        self.build_extensions()
      File "/usr/lib/python3.6/distutils/command/build_ext.py", line 448, in build_extensions
        self._build_extensions_serial()
      File "/usr/lib/python3.6/distutils/command/build_ext.py", line 473, in _build_extensions_serial
        self.build_extension(ext)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/build_ext.py", line 199, in build_extension
        _build_ext.build_extension(self, ext)
      File "/usr/lib/python3.6/distutils/command/build_ext.py", line 533, in build_extension
        depends=ext.depends)
      File "/usr/lib/python3.6/distutils/ccompiler.py", line 574, in compile
        self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
      File "/usr/lib/python3.6/distutils/unixccompiler.py", line 120, in _compile
        raise CompileError(msg)
    distutils.errors.CompileError: command 'aarch64-linux-gnu-gcc' failed with exit status 1
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 154, in save_modules
        yield saved
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 195, in setup_context
        yield
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 250, in run_setup
        _execfile(setup_script, ns)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 45, in _execfile
        exec(code, globals, locals)
      File "/tmp/easy_install-bju22v8k/Cython-0.29.6/setup.py", line 285, in <module>
      File "/usr/local/lib/python3.6/dist-packages/setuptools/__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "/usr/lib/python3.6/distutils/core.py", line 163, in setup
        raise SystemExit("error: " + str(msg))
    SystemExit: error: command 'aarch64-linux-gnu-gcc' failed with exit status 1
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 1144, in run_setup
        run_setup(setup_script, args)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 253, in run_setup
        raise
      File "/usr/lib/python3.6/contextlib.py", line 99, in __exit__
        self.gen.throw(type, value, traceback)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 195, in setup_context
        yield
      File "/usr/lib/python3.6/contextlib.py", line 99, in __exit__
        self.gen.throw(type, value, traceback)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 166, in save_modules
        saved_exc.resume()
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 141, in resume
        six.reraise(type, exc, self._tb)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/_vendor/six.py", line 685, in reraise
        raise value.with_traceback(tb)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 154, in save_modules
        yield saved
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 195, in setup_context
        yield
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 250, in run_setup
        _execfile(setup_script, ns)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/sandbox.py", line 45, in _execfile
        exec(code, globals, locals)
      File "/tmp/easy_install-bju22v8k/Cython-0.29.6/setup.py", line 285, in <module>
      File "/usr/local/lib/python3.6/dist-packages/setuptools/__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "/usr/lib/python3.6/distutils/core.py", line 163, in setup
        raise SystemExit("error: " + str(msg))
    SystemExit: error: command 'aarch64-linux-gnu-gcc' failed with exit status 1
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-do5j_iad/h5py/setup.py", line 168, in <module>
        cmdclass = CMDCLASS,
      File "/usr/local/lib/python3.6/dist-packages/setuptools/__init__.py", line 144, in setup
        _install_setup_requires(attrs)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/__init__.py", line 139, in _install_setup_requires
        dist.fetch_build_eggs(dist.setup_requires)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/dist.py", line 724, in fetch_build_eggs
        replace_conflicting=True,
      File "/usr/local/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 782, in resolve
        replace_conflicting=replace_conflicting
      File "/usr/local/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 1065, in best_match
        return self.obtain(req, installer)
      File "/usr/local/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 1077, in obtain
        return installer(requirement)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/dist.py", line 791, in fetch_build_egg
        return cmd.easy_install(req)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 679, in easy_install
        return self.install_item(spec, dist.location, tmpdir, deps)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 705, in install_item
        dists = self.install_eggs(spec, download, tmpdir)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 890, in install_eggs
        return self.build_and_install(setup_script, setup_base)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 1158, in build_and_install
        self.run_setup(setup_script, setup_base, args)
      File "/usr/local/lib/python3.6/dist-packages/setuptools/command/easy_install.py", line 1146, in run_setup
        raise DistutilsError("Setup script exited with %s" % (v.args[0],))
    distutils.errors.DistutilsError: Setup script exited with error: command 'aarch64-linux-gnu-gcc' failed with exit status 1
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-do5j_iad/h5py/

When will MXNET be released officially ?

pip3 install --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v42 tensorflow-gpu==1.13.1+nv19.3 --user

I took this error installing using above tensorflow command.

Hi, karthikbalu.meng and lgndogan

The error indicates a missing library required by the package.
It can be fixed by installing the hdf5 library beforehand.

I have updated this information into the comment#1.
Please try it again and also let us know the results.

Thanks.

Hi,AastaLLL thank you for answer but I took this error. You can see below comment

Collecting tensorflow-gpu==1.13.1+nv19.3
Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘NewConnectionError(’<urllib3.connection.VerifiedHTTPSConnection object at 0x7f9fe8ae10>: Failed to establish a new connection: [Errno -2] Name or service not known’,)’: /compute/redist/jp/v42/tensorflow-gpu/
Using cached https://developer.download.nvidia.com/compute/redist/jp/v42/tensorflow-gpu/tensorflow_gpu-1.13.1+nv19.3-cp36-cp36m-linux_aarch64.whl
Collecting numpy>=1.13.3 (from tensorflow-gpu==1.13.1+nv19.3)
Collecting absl-py>=0.1.6 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/da/3f/9b0355080b81b15ba6a9ffcf1f5ea39e307a2778b2f2dc8694724e8abd5b/absl-py-0.7.1.tar.gz
Collecting tensorflow-estimator<1.14.0rc0,>=1.13.0 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/bb/48/13f49fc3fa0fdf916aa1419013bb8f2ad09674c275b4046d5ee669a46873/tensorflow_estimator-1.13.0-py2.py3-none-any.whl
Collecting gast>=0.2.0 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/4e/35/11749bf99b2d4e3cceb4d55ca22590b0d7c2c62b9de38ac4a4a7f4687421/gast-0.2.2.tar.gz
Collecting grpcio>=1.8.6 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/e3/aa/6ee1f1c0b35d270725abff07f8d807c0413154af14cd019fd3aa3ab69d64/grpcio-1.19.0.tar.gz
Collecting tensorboard<1.14.0,>=1.13.0 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/0f/39/bdd75b08a6fba41f098b6cb091b9e8c7a80e1b4d679a581a0ccd17b10373/tensorboard-1.13.1-py3-none-any.whl
Collecting astor>=0.6.0 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/35/6b/11530768cac581a12952a2aad00e1526b89d242d0b9f59534ef6e6a1752f/astor-0.7.1-py2.py3-none-any.whl
Collecting keras-preprocessing>=1.0.5 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/c0/bf/0315ef6a9fd3fc2346e85b0ff1f5f83ca17073f2c31ac719ab2e4da0d4a3/Keras_Preprocessing-1.0.9-py2.py3-none-any.whl
Collecting wheel>=0.26 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/96/ba/a4702cbb6a3a485239fbe9525443446203f00771af9ac000fa3ef2788201/wheel-0.33.1-py2.py3-none-any.whl
Collecting keras-applications>=1.0.6 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/90/85/64c82949765cfb246bbdaf5aca2d55f400f792655927a017710a78445def/Keras_Applications-1.0.7-py2.py3-none-any.whl
Collecting termcolor>=1.1.0 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz
Collecting six>=1.10.0 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl
Collecting protobuf>=3.6.1 (from tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/f5/e4/7c86c9c9b4bad7632e107064fb07d0812b9858a49830d0b2477081bf1267/protobuf-3.7.1-py2.py3-none-any.whl
Collecting mock>=2.0.0 (from tensorflow-estimator<1.14.0rc0,>=1.13.0->tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/e6/35/f187bdf23be87092bd0f1200d43d23076cee4d0dec109f195173fd3ebc79/mock-2.0.0-py2.py3-none-any.whl
Collecting werkzeug>=0.11.15 (from tensorboard<1.14.0,>=1.13.0->tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/24/4d/2fc4e872fbaaf44cc3fd5a9cd42fda7e57c031f08e28c9f35689e8b43198/Werkzeug-0.15.1-py2.py3-none-any.whl
Collecting markdown>=2.6.8 (from tensorboard<1.14.0,>=1.13.0->tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/f5/e4/d8c18f2555add57ff21bf25af36d827145896a07607486cc79a2aea641af/Markdown-3.1-py2.py3-none-any.whl
Collecting h5py (from keras-applications>=1.0.6->tensorflow-gpu==1.13.1+nv19.3)
Using cached https://files.pythonhosted.org/packages/43/27/a6e7dcb8ae20a4dbf3725321058923fec262b6f7835179d78ccc8d98deec/h5py-2.9.0.tar.gz
Complete output from command python setup.py egg_info:
Download error on https://pypi.python.org/simple/pkgconfig/: [Errno -2] Name or service not known – Some packages may not be found!
Couldn’t find index page for ‘pkgconfig’ (maybe misspelled?)
Download error on https://pypi.python.org/simple/: [Errno -2] Name or service not known – Some packages may not be found!
No local packages or working download links found for pkgconfig
Traceback (most recent call last):
File “”, line 1, in
File “/tmp/pip-build-jess6ybg/h5py/setup.py”, line 168, in
cmdclass = CMDCLASS,
File “/usr/lib/python3/dist-packages/setuptools/init.py”, line 128, in setup
_install_setup_requires(attrs)
File “/usr/lib/python3/dist-packages/setuptools/init.py”, line 123, in _install_setup_requires
dist.fetch_build_eggs(dist.setup_requires)
File “/usr/lib/python3/dist-packages/setuptools/dist.py”, line 513, in fetch_build_eggs
replace_conflicting=True,
File “/usr/lib/python3/dist-packages/pkg_resources/init.py”, line 774, in resolve
replace_conflicting=replace_conflicting
File “/usr/lib/python3/dist-packages/pkg_resources/init.py”, line 1057, in best_match
return self.obtain(req, installer)
File “/usr/lib/python3/dist-packages/pkg_resources/init.py”, line 1069, in obtain
return installer(requirement)
File “/usr/lib/python3/dist-packages/setuptools/dist.py”, line 580, in fetch_build_egg
return cmd.easy_install(req)
File “/usr/lib/python3/dist-packages/setuptools/command/easy_install.py”, line 692, in easy_install
raise DistutilsError(msg)
distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse(‘pkgconfig’)

----------------------------------------

Command “python setup.py egg_info” failed with error code 1 in /tmp/pip-build-jess6ybg/h5py/

I can confirm its working now after installing sudo apt-get install python3-pip libhdf5-serial-dev hdf5-tools

Hi lgndogan

You can install by following these commands

sudo apt-get install libhdf5-serial-dev hdf5-tools
sudo apt-get install zlib1g-dev zip libjpeg8-dev libhdf5-dev

pip3 install numpy grpcio absl-py py-cpuinfo psutil portpicker grpcio six mock requests gast h5py astor termcolor

pip3 install --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v42 tensorflow-gpu==1.13.1+nv19.3 --user

Hope this will be helpful

1 Like

Hi hariharanv,

I did all steps.But I learn hdf5 installation maybe dont supported on ubuntu 18.04. Many forums say it and ubuntu 16.04 and lower version of ubuntu supports this package. But ı don’t know how can ı solve this problem. I was waiting answer by NVIDIA.

Hi lgndogan,

I’m also using same ubuntu version (all jetson nano is shipped with same ubuntu version-18.04 ) and hdf5 supported, I guess some other package is conflicting with it. One solution you can try is re-flashing the jetson os and installing it again. But make sure you don’t have any important files

so what is the command for tensorflow install under python 2.7?

I tried installing tensorflow 1.12 rather than 1.13 which is not compatible for my use case so based on this link https://docs.nvidia.com/deeplearning/dgx/install-tf-xavier/index.html

Many libraries doesn’t support tensorflow 1.13 yet

using command
pip3 install --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v42 tensorflow-gpu==1.12.0+nv18.12

But im getting following error

Looking in indexes: https://pypi.org/simple, https://developer.download.nvidia.com/compute/redist/jp/v42
Collecting tensorflow-gpu==1.12.0+nv18.12
  Could not find a version that satisfies the requirement tensorflow-gpu==1.12.0+nv18.12 (from versions: 1.13.1+nv19.3, 1.13.1+nv19.4)
No matching distribution found for tensorflow-gpu==1.12.0+nv18.12

Hi,

We only provide official TensorFlow for python 3 from JetPack4.2.
Thanks.

Hi,

Only v1.13.1 supports Jetson Nano.
Please use v1.13.1 instead.

Thanks.

Hello, I said that ı do not install tensorflow on jetson nano but, I installed tensorflow on jetson nano. I can give some information how can you install on board.
Firstly,
sudo apt-get update and then try to install this package:

sudo apt-get install build-essential autoconf libtool pkg-config python-opengl python-imaging python-pyrex python-pyside.qtopengl idle-python2.7 qt4-dev-tools qt4-designer libqtgui4 libqtcore4 libqt4-xml libqt4-test libqt4-script libqt4-network libqt4-dbus python-qt4 python-qt4-gl libgle3 python-dev libssl-dev

And then, Nvidia developer share package about h5py installation. Here is it :

sudo apt-get install python3-pip libhdf5-serial-dev hdf5-tools

I hope, it helped. Thank you