Installing ROS on an NVIDIA Tegra TX2

I've recently configured Jenkins slave nodes for a client. One of their build configurations is targeted for a Tegra TX2, so I was configuring a new TX2 build machine to generate ARM images. I was following my usual steps for configuring a Linux slave node, but quickly ran into trouble. Many of the dependencies, particularly for ROS, were not able to be installed by apt-get. I thought this was quite strange, as I had heard that their software already runs on a TX2.

After some googling, I came across a Jetson Hacks GitHub repository called installROSTX2. This repository provided a quick way for getting the ROS dependencies to resolve on my new system.

First, clone the installROSTX2 repository:

git clone git@github.com:jetsonhacks/installROSTX2.git

Then enter the directory and run the updateRepositories.sh script:

cd installROSTX2
./updateRepositories.sh

This script simply enables new apt repositories:

sudo apt-add-repository universe
sudo apt-add-repository multiverse
sudo apt-add-repository restricted
sudo apt-get update

After the updateRepositories.sh script finishes, run the installROS.sh script:

./installROS.sh

This will install ROS on the system. You can also skip this step and install the modules you need directly. Normal ROS packages will now resolve with apt-get.

Happy hacking!

Further Reading