Compiling Linux Air Combat from Source
Code
The flight simulation community has long needed a powerful, free flight
simulator that could be compiled from source code.
![Codeblocks ready to compile LINUX AIR COMBAT. Click for larger view. Compiler in action](Compiling01.jpg)
A great many flight
simulators are out there. Some are free and some are not, but very few
of them come with source code allowing compilation. Among the few that
do come with free source code, most have severe problems. Typically the
source code is extremely complex, or it was released after a bankruptcy
or some other situation of great urgency, and as a result it's in a
messy state or requires highly specialized hardware or expensive or
outdated software tools. Often the required tools and modules are no
longer available. It can take weeks or months of dedicated, detailed
work to put together the required development environment, and after
all of that you may find that the associated simulator lacks support
for combat or is encumbered by an awkward view system.
LINUX AIR COMBAT is different. The source code is unusually well organized, and all of the
prerequisites are "mainstream" within the Linux community. Every
prerequisite is kept up to date by its own active support organization,
and all are readily available free of charge.
After downloading and de-archiving the source code for LINUX AIR COMBAT
as described in our main LAC page HERE, you will need to make sure your desktop
Linux system is equipped with the necessary c++ compiler and a few other
software libraries and components. All of these are free components,
and all are very well known throughout the Linux community. Almost
every popular version of desktop Linux makes all of these components
available through some easy, quick, standardized Internet download.
(Refer back to the "Prerequisites" section of the prior page HERE for a more detailed description of each of
these items.)
Once your desktop LINUX is equipped with that small set of very
popular, free, well-known components, you should be able to compile
LINUX AIR COMBAT within 60 seconds and with no need to change any
of the source code at all. Most people report immediate success and
find that they can thereafter experiment with the source code to modify
the flight simulator according to their personal wishes. Many
beginners, who have never compiled anything before, have reported
success compiling Linux Air Combat!
Note: We used the free, well-known
"Codeblocks" Integrated Development Environment for our deep
development work, and we recommend that you do the same if you want to
make CHANGES or IMPROVEMENTS upon our source code. Sometimes using
Codeblocks may help you with other problems such as linking to obscure
libraries. Under normal circumstances, however, you can rely on the
well-known, usual and customary "makefile" techniques to compile and
link Linux Air Combat according to longstanding norms.
Early on during our development, we made YouTube playlists showing
the exact steps we used to
compile LINUX AIR COMBAT on various popular distributions of LINUX.
Although LINUX and its software libraries have evolved a bit since
some of those movies were made, others have been updated recently, and the general principles are unchanged. Just
adapt the names of any old function libraries to whatever new names are
in use on your own distro as you watch these movie clips:
New as of late Nov 2019: We now provide two distinct versions of a
conventional "Makefile" for those that do not want to use "Codeblocks".
If you are comfortable with "Makefile" conventions, you can use either of these two sets of Makefile tools
according to well-established Linux norms. They are:
- 1 of 2: Within our standard download archive, you will find a
short, simple "Makefile". Download it HERE.
This is a minimalist version that is very
easy to understand. We recommend you try this one first, if you don't
want to use "Codeblocks". Use the
well-known "make", "make clean", and "make install" commands according
to established LINUX norms. You will need "root"
authority to run the resulting install script, and it will install
Linux Air Combat into the global /usr filesystem for use by all users
of your desktop LINUX system.
Most people will want to use this method, and our online documentation
assumes this is the method you used when it discusses the locations of
files within your filesystem. However, we have seen a few versions of
LINUX on which this short,
simple version of our Makefile cannot properly resolve some obscure
references. In those cases, the "Codeblocks" option is more likely to
succeed, and will result in an identical installation that will be
consistent with all of our online documentation.
- 2 of 2: CLICK HERE
for our experimental, old
"Makefile", bundled up in a downloadable archive containing all of the
source code and required resources. This version is
out-of-date, building the oldest "production" version that remains
operationally compatible with the latest ones. Accordingly, this
version is not recommended for production use, but it may be useful as
a reference should it be necessary to solve obscure installation
issues. It includes a
"./configure" script that tries to obtain all of the prerequisite
compilers, linkers, software libraries, and development header files
that are needed to compile LAC. If any of those components is missing,
it displays an appropriate message referencing it by name and urging
you to install it. After that you can use "make", "make clean", and
"make install" according to established norms. You
will need "root" privileges when you run "make install" so it can install all LAC files into the /usr/sbin filesystem. Use this
version if the other versions don't work for you. This version has generally worked well for us even on LINUX
systems that couldn't properly resolve some obscure references with our
short, simple Makefile described in "1 of 2" above.
If you work through this method with success just once, you should be
able to use the other, newer methods with better success
thereafter. After
you have success with this approach, your LINUX machine will have all
of the tools needed to use the two prior approaches. You
should follow up with option "1 of 2" above to get the latest version
of LAC, installed for your use in the most popular manner.