392
edits
No edit summary |
(Update for FG 2018.1 and to Devuan Ascii) |
||
Line 1: | Line 1: | ||
HowTo build [[FlightGear]] <u> | HowTo build [[FlightGear]] <u>Stable</u> ([[Changelog_2018.1|2018.1]]) or bleeding edge development version, hereinafter simply called <u>[[FlightGear_Git#Repositories_and_branches | Next]]</u>, on [https://devuan.org/ Devuan] GNU/Linux Stable (Ascii). Users of Testing or Unstable at least have to change package names (version numbering) accordingly.<br /> | ||
Instructions | Instructions probably apply on [https://debian.org/ Debian] GNU/Linux Stretch, too. | ||
The meaning of this article is to be a short, '''checklist''' like, overview of the specific steps to compile FlightGear and components on Debian. 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 Debian. For more detailed information please refer to the main article [[Building_FlightGear_-_Linux | Building FlightGear on Linux]]. | ||
If you don't want to get your hands dirty, have a look at [[Scripted Compilation on Linux Debian/Ubuntu]]. | |||
[[File:Zeichen_144_icon.png|21px]] For beginners with compiling it is highly recommended to follow this guide step by step. Any modification to most of the here used commands | [[File:Zeichen_144_icon.png|21px]] For beginners with compiling it is highly recommended to follow this guide step by step. Any modification to most of the here used commands will cause trouble. | ||
Line 13: | Line 13: | ||
; Tools | ; Tools | ||
su -c "apt-get install | su -c "apt-get install cmake g++ gcc git make sed" | ||
; Dependencies | ; Dependencies | ||
su -c "apt-get install \ | su -c "apt-get install \ | ||
freeglut3-dev | freeglut3-dev libboost-dev libcurl4-openssl-dev libdbus-1-dev \ | ||
libfreetype6-dev libglew-dev libopenal-dev libopenscenegraph-dev \ | |||
libqt5opengl5-dev libxi-dev libxmu-dev pkg-config \ | |||
qt5-default qtbase5-private-dev qtdeclarative5-private-dev" | |||
: If you prefer you might replace "libcurl4-openssl-dev" by "libcurl4-gnutls-dev". | : If you prefer you might replace "libcurl4-openssl-dev" by "libcurl4-gnutls-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". | : [[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". | ||
Line 51: | Line 39: | ||
For more/advanced cmake options and SimGear's and FlightGear's optional features see the [[Building_using_CMake#Optional_Features|cmake]] article. | For more/advanced cmake options and SimGear's and FlightGear's optional features see the [[Building_using_CMake#Optional_Features|cmake]] article. | ||
[[File:Zeichen_144_icon.png|21px]] Do '''not''' mix instructions for <u> | [[File:Zeichen_144_icon.png|21px]] Do '''not''' mix instructions for <u>Stable</u> and <u>Next</u>! Not even for fgdata, mixing versions will almost certainly break the installation. | ||
=== [[plib]] === | === [[plib]] === | ||
<u>Stable</u> and <u> | <u>Stable</u> and <u>Next</u>: <br /> | ||
While just installing package "libplib-dev" should work, it's [http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg20793.html recommended] to build it from source. | While just installing package "libplib-dev" should work, it's [http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg20793.html recommended] to build it from source. | ||
cd $FG_SRC_DIR | cd $FG_SRC_DIR | ||
<nowiki>git clone | <nowiki>git clone git://git.code.sf.net/p/libplib/code libplib.git</nowiki> | ||
cd libplib.git | cd libplib.git | ||
echo "1.8.6" > version | echo "1.8.6" > version | ||
Line 69: | Line 57: | ||
=== [[SimGear]] === | === [[SimGear]] === | ||
<u>Stable</u> and <u> | <u>Stable</u> and <u>Next</u>: | ||
cd $FG_SRC_DIR | cd $FG_SRC_DIR | ||
<nowiki>git clone git://git.code.sf.net/p/flightgear/simgear simgear.git</nowiki> | <nowiki>git clone git://git.code.sf.net/p/flightgear/simgear simgear.git</nowiki> | ||
Line 75: | Line 63: | ||
<u>Stable</u> only: | <u>Stable</u> only: | ||
cd simgear.git | cd simgear.git | ||
git checkout release/ | git checkout release/2018.1 | ||
<u>Stable</u> and <u> | <u>Stable</u> and <u>Next</u>: | ||
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++11" -D CMAKE_INSTALL_PREFIX:PATH="$FG_INSTALL_DIR" \ | cmake CFLAGS="--std=c++11" -D CMAKE_INSTALL_PREFIX:PATH="$FG_INSTALL_DIR" \ | ||
Line 85: | Line 73: | ||
=== FlightGear source === | === FlightGear source === | ||
<u>Stable</u> and <u> | <u>Stable</u> and <u>Next</u>: | ||
cd $FG_SRC_DIR | cd $FG_SRC_DIR | ||
<nowiki>git clone git://git.code.sf.net/p/flightgear/flightgear flightgear.git</nowiki> | <nowiki>git clone git://git.code.sf.net/p/flightgear/flightgear flightgear.git</nowiki> | ||
Line 91: | Line 79: | ||
<u>Stable</u> only: | <u>Stable</u> only: | ||
cd flightgear.git | cd flightgear.git | ||
git checkout release/ | git checkout release/2018.1 | ||
<u>Stable</u> and <u> | <u>Stable</u> and <u>Next</u>: | ||
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++11" -D FG_DATA_DIR:PATH="$FG_INSTALL_DIR/fgdata" \ | cmake CFLAGS="--std=c++11" -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 | ||
make -j$(nproc) && make install | make -j$(nproc) && make install | ||
Line 101: | Line 89: | ||
=== FlightGear data === | === FlightGear data === | ||
<u>Stable</u> | <u>Stable</u> and <u>Next</u>: | ||
cd $FG_INSTALL_DIR | mkdir -p $FG_INSTALL_DIR/share && cd $FG_INSTALL_DIR/share | ||
<nowiki> | <nowiki>git clone git://git.code.sf.net/p/flightgear/fgdata fgdata</nowiki> | ||
<u> | <u>Stable</u> only: | ||
cd | cd fgdata | ||
git checkout release/2018.1 | |||
Line 120: | Line 107: | ||
To avoid the need to give the path to the <code>fgfs</code> command each time, you might consider to create a symlink at a place that is listed in $PATH: | To avoid the need to give the path to the <code>fgfs</code> command each time, you might consider to create a symlink at a place that is listed in $PATH: | ||
ln -s $FG_INSTALL_DIR/bin/fgfs $HOME/bin/fgfs | ln -s $FG_INSTALL_DIR/bin/fgfs $HOME/bin/fgfs | ||
{{Building}} |
edits