Unable to install TensorFlow on Jetson Nano because of "404" on NVidia server!

Having spent the best part of a day trying and failing to install TensorFlow on my Jetson Nano, I have run out of ideas.

I have been following advice on these here venerable forums and was finally making some progress following the instructions here: https://docs.nvidia.com/deeplearning/frameworks/install-tf-xavier/index.html

In section 3 the first command fails due to a missing file (“404” response)

Here’s the output from the command…

root@nvidia:~# pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v42 tensorflow-gpu
Collecting tensorflow-gpu
  Using cached https://developer.download.nvidia.com/compute/redist/jp/v42/tensorflow-gpu/tensorflow_gpu-1.13.1+nv19.5-cp36-cp36m-linux_aarch64.whl
Collecting tensorflow-estimator<1.14.0rc0,>=1.13.0 (from tensorflow-gpu)
Exception:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/lib/python3/dist-packages/pip/commands/install.py", line 353, in run
    wb.build(autobuilding=True)
  File "/usr/lib/python3/dist-packages/pip/wheel.py", line 749, in build
    self.requirement_set.prepare_files(self.finder)
  File "/usr/lib/python3/dist-packages/pip/req/req_set.py", line 380, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/lib/python3/dist-packages/pip/req/req_set.py", line 554, in _prepare_file
    require_hashes
  File "/usr/lib/python3/dist-packages/pip/req/req_install.py", line 278, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "/usr/lib/python3/dist-packages/pip/index.py", line 465, in find_requirement
    all_candidates = self.find_all_candidates(req.name)
  File "/usr/lib/python3/dist-packages/pip/index.py", line 423, in find_all_candidates
    for page in self._get_pages(url_locations, project_name):
  File "/usr/lib/python3/dist-packages/pip/index.py", line 568, in _get_pages
    page = self._get_page(location)
  File "/usr/lib/python3/dist-packages/pip/index.py", line 683, in _get_page
    return HTMLPage.get_page(link, session=self.session)
  File "/usr/lib/python3/dist-packages/pip/index.py", line 795, in get_page
    resp.raise_for_status()
  File "/usr/share/python-wheels/requests-2.18.4-py2.py3-none-any.whl/requests/models.py", line 935, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://developer.download.nvidia.com/compute/redist/jp/v42/tensorflow-estimator/
root@nvidia:~#

Is this documentation out of date or something? I’d be most grateful if someone could help me get past this problem.

I’m a complete novice to this Jetson Nano platform (and have never used TF either) but I’ve used Ubuntu for a few years and know my way around the basics.

Hi wardanw, there was an update to the pip wheel last week, but it looks like pip on your system may be using a cached version of it. Can you try running pip with --no-cache-dir and let us know if that helps? Thanks.

Ok I’ll try that.

If it’s any help, I downloaded the default bootable SD card image this morning from here:
https://developer.nvidia.com/embedded/dlc/jetson-nano-dev-kit-sd-card-image

So if it’s a cached pip wheel config file, then it might be embedded in that image. Perhaps a rebuild of the image would do the trick for other users.

Thanks for the suggestion.

The URL for the install directions was updated to here:

[url]Installing TensorFlow for Jetson Platform :: NVIDIA Deep Learning Frameworks Documentation

In the updated doc, we change the pip3 install -U pip command to be run as root, and then install the rest of the pip packages with sudo as well. This allows pip to be successfully upgraded from version 9.0.1, which seems to be the cause of the issue you’re having above.

Try upgrading pip or following those updated directions from the start to see if that helps.

Hello,

i have the same problem.
Can’t get it to work.

My system is in some broken state now. It’s complaining of being unable to import “main”, which looks like a python / pip error.

Am I going to have to reinstall the SD from scratch again (4th time)?

This is getting rather frustrating. I spent a lot of money on this dev kit.

sudo apt update

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

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

I have same problem.
The suggested way was not useful.

Please see this post regarding fix for the upgraded pip error:

https://devtalk.nvidia.com/default/topic/1049922/jetson-agx-xavier/installing-python-packages-with-pip/post/5328614/#5328614

Perhaps the powers that be at NVidia could add a footnote to that effect in the installation instructions (something like “if your installation fails like this then run this command to fix it”).

If this has been a known issue/workaround for over two months, and three people all find this problem within 24 hours then it’s likely that a lot of other people are having it too.

Please NVidia, support your developer community properly!.

1 Like

Sorry for the frustration, wardanw. With the previous instructions, this pip fix wasn’t needed. Did this pip fix work for you, and were you now able to install/run TF on Nano? Will get the docs updated in that case.

I didn’t try that fix so I cannot vouch for it. I managed to get pip working well enough that TensorFlow appears to be working at least at a basic level.

As I said, my system is in some unknown state now so all I can recommend is that someone at NVidia (preferably a person that has no prior experience of the Jetson Nano) actually tries the installation process that I followed…

Go to the following page and follow it closely, including the Verifying The Installation Installing TensorFlow for Jetson Platform :: NVIDIA Deep Learning Frameworks Documentation

If anything happens in between step 1 and step 2 on that page then all bets are off. This installation method seems to be very unstable and sensitive to slight variations in python and pip version numbers.

Also you should clarify that the SDKManager does NOT get installed on the Jetson Nano, the old docs clearly implied that it should be installed on the Jetson Nano, but this is impossible because the only build of that is AMD64 and the Jetson Nano is ARM64, they are physically and logically incompatible. Poorly written documentation helps nobody.

I hope this helps someone and allows them to avoid 2 full days of wasted work time.

Hi Nvidia moderator! I failed to install Tensorflow many times. PLEASE HELP!

viot@viot-desktop:~$ pip3 install --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v42 tensorflow-gpu==1.13.1+nv19.3 --user
Collecting tensorflow-gpu==1.13.1+nv19.3
Downloading https://developer.download.nvidia.com/compute/redist/jp/v42/tensorflow-gpu/tensorflow_gpu-1.13.1+nv19.3-cp36-cp36m-linux_aarch64.whl (204.7MB)
100% |████████████████████████████████| 204.7MB 2.4kB/s
Collecting wheel>=0.26 (from tensorflow-gpu==1.13.1+nv19.3)
Exception:
Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/pip/basecommand.py”, line 215, in main
status = self.run(options, args)
File “/usr/lib/python3/dist-packages/pip/commands/install.py”, line 353, in run
wb.build(autobuilding=True)
File “/usr/lib/python3/dist-packages/pip/wheel.py”, line 749, in build
self.requirement_set.prepare_files(self.finder)
File “/usr/lib/python3/dist-packages/pip/req/req_set.py”, line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File “/usr/lib/python3/dist-packages/pip/req/req_set.py”, line 554, in _prepare_file
require_hashes
File “/usr/lib/python3/dist-packages/pip/req/req_install.py”, line 278, in populate_link
self.link = finder.find_requirement(self, upgrade)
File “/usr/lib/python3/dist-packages/pip/index.py”, line 465, in find_requirement
all_candidates = self.find_all_candidates(req.name)
File “/usr/lib/python3/dist-packages/pip/index.py”, line 423, in find_all_candidates
for page in self._get_pages(url_locations, project_name):
File “/usr/lib/python3/dist-packages/pip/index.py”, line 568, in _get_pages
page = self._get_page(location)
File “/usr/lib/python3/dist-packages/pip/index.py”, line 683, in _get_page
return HTMLPage.get_page(link, session=self.session)
File “/usr/lib/python3/dist-packages/pip/index.py”, line 795, in get_page
resp.raise_for_status()
File “/usr/share/python-wheels/requests-2.18.4-py2.py3-none-any.whl/requests/models.py”, line 935, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://developer.download.nvidia.com/compute/redist/jp/v42/wheel/

I have similat problem but on Jetson Xavier. But with “https://developer.download.nvidia.com/compute/redist/jp/v42/tensorboard/

EDIT: Solved by itself, I have no idea why it work now.

Hi Vojta.micek! What do mean " Solved by itself".
You can install Tensorflow with the link???
https://developer.download.nvidia.com/compute/redist/jp/v42/tensorboard/

After multiple attempts it just worked and installed without any issue. Maybe there was something that block it and was closed after restart of the device. I used this guide. [url]Installing TensorFlow for Jetson Platform :: NVIDIA Deep Learning Frameworks Documentation

Hi vojta.micek! Thanks for saving my day! Hope good things come to you!

(confused user flag with upgrade flag, nevermind.)

I’ve had all the problems that people are describing and the only command that worked for me was:

sudo pip3 install --pre --no-cache-dir --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v42 tensorflow-gpu

1 Like

–no-cache-dir solved for me.