3 KiB
Linux
These are the steps to build all you need for the TP.
Prerequisites
In order to develop in C++ some system packages are required (you may already have it installed on your machine since the opengl tp of last semester):
sudo apt-get install libglu1-mesa-dev freeglut3-dev build-essential mesa-common-dev libxi-dev libxmu-dev automake libgtk+2.0-dev pkg-config libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev libv4l-dev gstreamer1.0-plugins-bad ubuntu-restricted-extras
To build this code we use the CMake build system. You can install CMake from the system package manager but you need a recent version >= 3.10. Check the version that is provided by your linux distribution and if it is suitable usually you just need to
```
sudo apt-get install cmake
```
otherwise you can install the binaries from here: https://github.com/Kitware/CMake/releases/download/v3.17.1/cmake-3.17.1-Linux-x86_64.sh
To install:
```
wget https://github.com/Kitware/CMake/releases/download/v3.17.1/cmake-3.17.1-Linux-x86_64.sh
chmod +x cmake-3.17.1-Linux-x86_64.sh
sudo cmake-3.17.1-Linux-x86_64.sh --prefix=/usr/local/ --skip-license
```
Setting up your working environment
-
create a folder
tpTI
where you will have all the dependencies and the sources of the tp. Please avoid paths containing spaces, weird characters or accents. -
to make your life easier, set up an environment variable that refer to this location
-
You can define it for a single session with (e.g.)
export tpTIBasePath=/home/sgaspari/dev/tpTI
-
or you can define it once for all by adding the previous instruction to your
~/.bashrc
(or~/.profile
) files, so that you don't need to run the instruction for each terminal session. -
you can verify that the variable is set with
echo ${tpTIBasePath}
-
opencv
OpenCV is a computer vision library that contains some of the algorithms we are using for image processing and pose estimation. To install it:
-
download the library from the repository https://github.com/opencv/opencv/archive/3.4.13.zip
-
unzip the file into
${tpTIBasePath}
(a folder namedopencv-3.4.13
should appear). -
from
${tpTIBasePath}\opencv-3.4.13
create abuild
directory (mkdir build
) -
from the shell, go to
${tpTIBasePath}/opencv-3.4.13/build
and execute the following:cmake .. -DCMAKE_INSTALL_PREFIX:PATH=`pwd`/install -DCMAKE_BUILD_TYPE=Release -DWITH_CUDA:BOOL=OFF -DBUILD_PERF_TESTS:BOOL=OFF -DBUILD_TESTS:BOOL=OFF
-
then build and install the library by running
make install -j$(nproc)
and go grab a cup of coffee or a beverage of your choice ;-)
-
in order to run the tp code later on you have to add the built libraries to the
LD_LIBRARY_PATH
environment variable.export LD_LIBRARY_PATH=${tpTIBasePath}/opencv-3.4.13/build/install/lib:$LD_LIBRARY_PATH
Again, you can add this to your
~/.bashrc
(or~/.profile
) file so that you have it available for all shell sessions.