Tensorflow Object detection API for Jetson Nano...stuck on scipy version forever

Hi, some time ago I opened a topic regarding the procedure of installing the TensorFlow object detection API on the Jetson NANO.

I solved the specific problem with protobuf compilation that I asked about in the linked topic (which is now closed), but now I’m getting stuck on something else.
In short, this is what I did so far:

*) installed TF dependencies and TF following these instructions

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 testresources setuptools==49.6.0
sudo pip3 install -U numpy==1.16.1 future==0.18.2 mock==3.0.5 h5py==2.10.0 keras_preprocessing==1.1.1 keras_applications==1.0.8 gast==0.2.2 futures protobuf pybind11
sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v45 tensorflow

Tensorflow works fine (I can import it in Python), so I went on and tried to install the object detection API following the
official instructions..
When it came to compile the protobuf, I downloaded protoc-3.18.0-linux.aarch_64 from Releases · protocolbuffers/protobuf · GitHub and used to compile the .proto files.
Finally, I ran (as mentioned in the instructions):

cp object_detection/packages/tf2/setup.py .
python -m pip install --use-feature=2020-resolver . 

The problem is that the installation seems to get stuck. It keeps reverting to older versions of scipy, apparently without
finding a compatible one.
Am I doing something wrong? Is there a guide somewhere that I can follow?


python -m pip install --use-feature=2020-resolver . 

It looks like you are using python2.
Could you run the command with python3 to see if it helps?


It was a typo, I actually used

python3 -m pip install --use-feature=2020-resolver .

(if you look at the previous commands I used to install the rest of the stuff, I did everything in Python3, if I had been using Python2 for the object detection API it wouldn’t go that far as to check dependencies).

Anyway, I left it running for the whole night, at the end it ran into the error:

ERROR: Could not install packages due to an OSError: [Errno 28] No space left on device

I assume it was because of the number of package versions it was downloading. I guess I could try again after freeing up some space, but I think there’s something wrong with the whole process, it shouldn’t take so long to solve the dependencies. Or should it?


[Errno 28] No space left on device

The error indicates you are running out of storage.
Please make sure you have enough space to install it.

Actually, it is common that some installation takes a long time on Jetson Nano.
Especially some package needs to build natively for installation, it might take hours to finish.