-
-
Notifications
You must be signed in to change notification settings - Fork 58
Compiling
AviTab contains its external dependencies as git submodules, all you need is a C++ compiler in a POSIX environment. Some external depdendencies rely on the legacy autotools so these need to be installed as well.
I personally use Jetbrains CLion as my primary IDE to develop AviTab, they kindly sponsored a free license for AviTab's development. My reason to evaluate it was Eclipse's lack of support for MinGW CMake projects on Windows and CLion just worked out of the box for me.
I suggest to compile AviTab in the MSYS2 environment.
- Get and install MSYS2 for x86_64 from here: https://www.msys2.org/
- MSYS will install three shells, the following steps should be done in the "MSYS2 MSYS" shell:
- Install the compiler toolchain:
pacman -S mingw-w64-x86_64-toolchain
- Install cmake:
pacman -S mingw64/mingw-w64-x86_64-cmake
- Install git:
pacman -S msys/git
- Install patch:
pacman -S msys/patch
- Install make:
pacman -S msys/make
- Install autoconf:
pacman -S msys/autoconf
- Install automake:
pacman -S msys/automake
- Install libtool:
pacman -S msys/libtool
- Install glfw:
pacman -S mingw64/mingw-w64-x86_64-glfw
- Install the compiler toolchain:
- The actual compilation should be done in the "MSYS2 MinGW64" shell
The standalone version requires glfw
to build and run. You don't need it if you only want the plugin. It can be installed using common package managers, e.g.apt-get
on Debian and brew
on OS X. Make sure the packages mentioned for the Windows version above are available on your platform, e.g. cmake
, make
, patch
and so on.
Since AviTab contains its external dependencies as git submodules, you need to clone it using this command:
git clone --recurse-submodules https://github.com/fpw/avitab
- Enter the
avitab
directory - Run
./build_dependencies.sh
, this script works on all supported platforms - Run it again to see if anything failed, it should basically do nothing on the second run
- If it failed, you should run
./clean_dependencies.sh
before trying again
- Create a directory called
build
inside the AviTab directory - Enter that directory and run
cmake -G 'Unix Makefiles' ..
- Now you should be able to compile by running
make AviTab-standalone
ormake avitab_plugin
- To run the standalone version, copy the contents of the res folder from
avitab/res
toavitab/build
- On success, you should be able to run the AviTab executable located in
avitab/build/
- The Navigraph integration is not supported if you compile AviTab yourself. The reason is that Navigraph has licensed the charts from Jeppesen and the license forbids using the charts outside of virtual environments. Since you could create your own client by using AviTab's code and thus violate Jeppesen's license, this is forbidden. Please do not try to reverse engineer it as this will get AviTab banned and then no one can use it anymore.