Howto:Build and run FlightGear on Raspberry Pi 4: Difference between revisions

Jump to navigation Jump to search
Line 651: Line 651:
There can be a complication when using a version of FlightGear that has been built with download_and_compile.sh. This involves the combination of  two situations; the version is being used and changes are being performed to files within the FlightGear build, furthermore the build is being updated at a later time. During updates, Git keeps an eye on any changes too files within this build. Git assumes that you are a software developer, of course this is no problem if you know what you are doing. So if Git sees a change or a new file is created, like to a joystick file, it thinks you are a developer and keeps track of changes. The issue shows up, after changes were performed, when download_and_compile.sh goes to update the FlightGear build. Git gets involved and needs to know how to integrate your changes with the changes from the update performed by download_and_compile.sh. An easy solution is to make a second copy of FlightGear to use and just update the original. Or make a copy of fgdate and use the FlightGear launcher to point to this working/running version of fgdata. Here we are assuming that the modified or created files are only within fgdata.
There can be a complication when using a version of FlightGear that has been built with download_and_compile.sh. This involves the combination of  two situations; the version is being used and changes are being performed to files within the FlightGear build, furthermore the build is being updated at a later time. During updates, Git keeps an eye on any changes too files within this build. Git assumes that you are a software developer, of course this is no problem if you know what you are doing. So if Git sees a change or a new file is created, like to a joystick file, it thinks you are a developer and keeps track of changes. The issue shows up, after changes were performed, when download_and_compile.sh goes to update the FlightGear build. Git gets involved and needs to know how to integrate your changes with the changes from the update performed by download_and_compile.sh. An easy solution is to make a second copy of FlightGear to use and just update the original. Or make a copy of fgdate and use the FlightGear launcher to point to this working/running version of fgdata. Here we are assuming that the modified or created files are only within fgdata.


The following was provided by enrogue <ref>https://forum.flightgear.org/viewtopic.php?f=45&t=36922&start=20</ref>
<blockquote>
I'll just post this here now, I have a successful compile on Debian 10 armhf (via an LXD container on a RK3399 powered Rock960 which runs ubuntu 64bit), and on an RPi3B
I can verify that the build works on the RPi4B 4GB running raspbian & uses just over 1G ram while running - so you *might* be able to squeeze into a 2G Rpi4, but I'm not sure - you probably would have issues doing a -j4 compile on a 2GB one as a couple of the compiles use over 600M per process
The method:
</blockquote>
<syntaxhighlight lang="bash">
mkdir work
cd work/
git clone https://git.code.sf.net/p/flightgear/fgmeta
mkdir next
cd next
../fgmeta/download_and_compile.sh -j2
*wait a bit..., it will fail on in simgear*
*may as well grab fgdata (depth=1 to keep the download small)*
cd install/flightgear
git clone --depth=1 git://git.code.sf.net/p/flightgear/fgdata
cd ../..
../fgmeta/download_and_compile.sh -j2 OSG
*it will fail*
*grab the patch*
wget -c https://sources.debian.org/data/main/o/openscenegraph-3.4/3.4.1+dfsg1-5/debian/patches/0007-Explicit-signed-char-type-for-portability-base64.patch
cd openscenegraph/
*patch it*
patch -p1 < ../0007-Explicit-signed-char-type-for-portability-base64.patch
cd ..
*you may have done these configs already*
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
*build OSG*
../fgmeta/download_and_compile.sh -pn -j4 OSG
*build the rest - it will pick up your compiled OSG now*
../fgmeta/download_and_compile.sh -pn -j4
</syntaxhighlight>


====Raspberry Pi OS 64-bit====
====Raspberry Pi OS 64-bit====
320

edits

Navigation menu