-
Notifications
You must be signed in to change notification settings - Fork 24
How to build and install grvc ual
There are no binary distributions for grvc-ual, so you need to download the source and build it yourself. In order to use grvc-ual, you need a working installation of ROS Melodic. Refer to this site for installing it. All development is tested in Ubuntu 18.04. We will assume you have your ROS workspace in the ~/catkin_ws folder.
UAL versions prior to v3.1 are tested in Ubuntu 16.04 and ROS Kinetic.
Now it is easier to setup UAL. You need to run configuration script in the root folder:
$ cd ~/catkin_ws/src
$ git clone https://github.com/grvcTeam/grvc-ual.git
$ cd ~/catkin_ws/src/grvc-ual
$ ./configure.py
This script will ask you which of the available backends you want to use. Keep in mind that some of them need specific and not so easy to install dependencies (e.g. UE and DJI), so choose only those you will really use.
In some cases, it can install the extra dependencies automatically. If not, it should show you where to find the instructions to install these dependencies, which are also here.
Then you can compile:
$ cd ~/catkin_ws
$ catkin_make
If you are here, everything is ready. In case of problems, you should check our known issues page or create a new issue on GitHub.
In case you prefer to know the details or if you are new to Linux and ROS, follow these instructions.
Before you can actually install the project, you need to install the following dependencies.
$ sudo apt-get install libeigen3-dev ros-$(rosversion -d)-geodesy ros-$(rosversion -d)-joy
Check this section for specific dependencies per backend.
The first thing you need for this is a catkin workspace. If you already have a workspace you wish to use to build the packages, skip to "Downloading and compiling the source". If not, follow the instructions in Create a ROS Workspace.
We will assume you are creating your workspace in the ~/catkin_ws folder.
The grvc-ual repository contains a folder with a set of packages. These packages need to reside in the src folder of your catkin workspace. Follow this instructions to correctly download and compile the source:
$ cd ~/catkin_ws/src
$ git clone https://github.com/grvcTeam/grvc-ual.git
$ cd ~/catkin_ws/src/grvc-ual
$ ./configure.py
$ cd ~/catkin_ws
$ catkin_make
The main objective of the configure.py
script is to put CATKIN_IGNORE files in the backends that you won't use. Thus, you can use the script or directly create those CATKIN_IGNORE files manually.
- Download and install crazyflie_ros: https://github.com/whoenig/crazyflie_ros
- Download and install DJI SDK core library: https://github.com/dji-sdk/Onboard-SDK
- Download in your catkin workspace the DJI Onboard SDK ROS: https://github.com/dji-sdk/Onboard-SDK-ROS
- Download and install MAVSDK .deb: https://github.com/mavlink/MAVSDK/releases
$ sudo apt install -y ros-$(rosversion -d)-mavros ros-$(rosversion -d)-mavros-extras
$ sudo geographiclib-get-geoids egm96-5
$ sudo usermod -a -G dialout $USER
$ sudo apt remove modemmanager
If you want to use the PX4 SITL simulations, follow these instructions to install and configure the required software.
- Request permission to clone Unreal Engine tutorial.
- Download and install UnrealEngine:
git clone -b 4.18 https://github.com/EpicGames/UnrealEngine.git cd UnrealEngine ./Setup.sh ./GenerateProjectFiles.sh make
- Download and compile AirSim:
git clone https://github.com/Microsoft/AirSim.git cd AirSim ./setup.sh ./build.sh
- Install AirSim, keep in the AirSim folder:
sudo mkdir -p /usr/local/lib/AirSim sudo cp AirLib/lib/libAirLib.a /usr/local/lib/AirSim/ sudo cp AirLib/lib/x64/Debug/libMavLinkCom.a /usr/local/lib/AirSim sudo cp AirLib/lib/x64/Debug/librpc.a /usr/local/lib/AirSim/ sudo mkdir -p /usr/local/include/AirSim sudo cp AirLib/include/* /usr/local/include/AirSim/ -R sudo mkdir -p /usr/local/include/AirSim/deps sudo cp AirLib/deps/* /usr/local/include/AirSim/deps -R sudo cp AirLib/deps/eigen3/Eigen /usr/local/include/AirSim/common/ -R