FreeBASIC is built through the top-level
GNUmakefile and the modular make
files in
mk/. Older notes may refer to a single monolithic makefile or to
manual platform setup. The current tree is intentionally split into platform,
CPU, toolchain, feature policy, bootstrap, packaging, and install-layout
modules.
Normal local build
A typical native build starts with these commands:
(sh)
make print-config
make prereqs-fbc
make -j4
Use a job count that fits the machine. The important point is that
print-config shows what the make system thinks the host, target, compiler,
layout, and tools are before a long build starts.
The default build includes the compiler stage and the core libraries. The
library group includes the runtime library, graphics library, sound library, and
other shipped libraries used by installed FreeBASIC programs.
Build scripts
The
build_scripts/ directory contains the repeatable build, package, and
smoke-test entry points used for platform work. Prefer those scripts when
building release packages or exercising a target-specific port. Direct
make
commands are still useful while developing a focused compiler or runtime change.
Useful follow-up pages
::DevBuildConfig|Build configuration::
::DevRebuildAfterUpdates|Getting updates and rebuilding::
::DevFbcTestSuite|The test suite::
::DevCrossCompiling|Cross-compiling::
::DevBootstrap|Bootstrapping::