406
edits
m (Update liblzma) |
m (Update for Devuan Chimaera) |
||
Line 1: | Line 1: | ||
HowTo build [[FlightGear]] on [https://devuan.org/ Devuan] GNU/Linux Stable ( | HowTo build [[FlightGear]] on [https://devuan.org/ Devuan] GNU/Linux Stable (Chimaera). Instructions probably apply to [https://debian.org/ Debian] GNU/Linux Bullseye, too. | ||
The meaning of this article is to be a short, ''checklist'' like, overview of the specific steps to compile FlightGear and components on Devuan. For more detailed information please refer to the main article [[Building_FlightGear_-_Linux | Building FlightGear on Linux]]. | The meaning of this article is to be a short, ''checklist'' like, overview of the specific steps to compile FlightGear and components on Devuan. For more detailed information please refer to the main article [[Building_FlightGear_-_Linux | Building FlightGear on Linux]]. | ||
Line 11: | Line 11: | ||
'''Tools''' | '''Tools''' | ||
su -c "apt-get install cmake g++ gcc git make sed" | su -c "apt-get install cmake g++-9 gcc-9 git make sed" | ||
Line 19: | Line 19: | ||
: [[File:Zeichen_144_icon.png|21px]] During installation development packages of libraries which are going to be compiled ''must not'' be installed. They can safely be re-installed after compilation. Namely these are libplib-dev and simgear-dev. | : [[File:Zeichen_144_icon.png|21px]] During installation development packages of libraries which are going to be compiled ''must not'' be installed. They can safely be re-installed after compilation. Namely these are libplib-dev and simgear-dev. | ||
su -c "apt-get install \ | su -c "apt-get install \ | ||
freeglut3-dev | freeglut3-dev liblzma-dev pkg-config \ | ||
libboost-dev | libboost-dev libopenal-dev qml-module-qtquick2 \ | ||
libcurl4-openssl-dev | libcurl4-openssl-dev libopenscenegraph-dev qml-module-qtquick-window2 \ | ||
libdbus-1-dev | libdbus-1-dev libqt5opengl5-dev qtbase5-private-dev \ | ||
libevent-dev | libevent-dev libqt5svg5-dev qtdeclarative5-private-dev \ | ||
libfreetype6-dev | libfreetype6-dev libxi-dev qttools5-dev \ | ||
libglew-dev | libglew-dev libxmu-dev zlib1g-dev" | ||
<!-- | <!-- für Chimaera/Bullseye?: libqt5quick5-gles --> | ||
== Build and install == | == Build and install == | ||
Some things require customisation. We'll use [http://www.cmiss.org/cmgui/wiki/SettingEnvironmentVariablesInBash environment variables] for them: <br /> | Some things require customisation. We'll use [http://www.cmiss.org/cmgui/wiki/SettingEnvironmentVariablesInBash environment variables] for them: <br /> | ||
: '''FG_VERSION''' - The version of FlightGear to build and install. This is either <code>next</code> (for the bleeding edge development branch) or a release number in the form <code>release/ | : '''FG_VERSION''' - The version of FlightGear to build and install. This is either <code>next</code> (for the bleeding edge development branch) or a release number in the form <code>release/2020.3</code>. For a list of valid releases see [https://sourceforge.net/p/flightgear/flightgear/ref/next/branches/ here]. <br /> | ||
: '''FG_SRC_DIR''' - The absolute path to the directory which is supposed to hold the source codes. In case your user belongs to the group ''staff'', <code>/usr/local/src/</code> would be an appropriate location. But any location is fine, too, e.g. <code>$HOME/src/</code>. In any case the user has to have write access there.<br /> | : '''FG_SRC_DIR''' - The absolute path to the directory which is supposed to hold the source codes. In case your user belongs to the group ''staff'', <code>/usr/local/src/</code> would be an appropriate location. But any location is fine, too, e.g. <code>$HOME/src/</code>. In any case the user has to have write access there.<br /> | ||
: '''FG_INSTALL_DIR''' - The absolute path to where FlightGear is going to be installed. Again, <code>/usr/local/</code> is appropriate, if your user belongs to ''staff''. But any location where the user has write access is ok, e.g. <code>$HOME/FlightGear/</code>. <br /> | : '''FG_INSTALL_DIR''' - The absolute path to where FlightGear is going to be installed. Again, <code>/usr/local/</code> is appropriate, if your user belongs to ''staff''. But any location where the user has write access is ok, e.g. <code>$HOME/FlightGear/</code>. <br /> | ||
Line 85: | Line 84: | ||
git checkout $FG_VERSION | git checkout $FG_VERSION | ||
mkdir $FG_SRC_DIR/build-sg && cd $FG_SRC_DIR/build-sg | mkdir $FG_SRC_DIR/build-sg && cd $FG_SRC_DIR/build-sg | ||
cmake CFLAGS="--std=c++ | CXX=g++-9 cmake CFLAGS="--std=c++17" -D CMAKE_BUILD_TYPE=Release \ | ||
-D CMAKE_INSTALL_PREFIX:PATH="$FG_INSTALL_DIR" $FG_SRC_DIR/simgear.git | -D CMAKE_INSTALL_PREFIX:PATH="$FG_INSTALL_DIR" $FG_SRC_DIR/simgear.git | ||
make -j$(nproc) | make -j$(nproc) | ||
Line 98: | Line 97: | ||
git checkout $FG_VERSION | git checkout $FG_VERSION | ||
mkdir $FG_SRC_DIR/build-fg && cd $FG_SRC_DIR/build-fg | mkdir $FG_SRC_DIR/build-fg && cd $FG_SRC_DIR/build-fg | ||
cmake CFLAGS="--std=c++ | CXX=g++-9 cmake CFLAGS="--std=c++17" -D CMAKE_BUILD_TYPE=Release \ | ||
-D FG_DATA_DIR:PATH="$FG_INSTALL_DIR/share/fgdata" \ | -D FG_DATA_DIR:PATH="$FG_INSTALL_DIR/share/fgdata" \ | ||
-D CMAKE_INSTALL_PREFIX:PATH="$FG_INSTALL_DIR" $FG_SRC_DIR/flightgear.git | -D CMAKE_INSTALL_PREFIX:PATH="$FG_INSTALL_DIR" $FG_SRC_DIR/flightgear.git |
edits