Prefer static libraries over dynamic ones when linking
When creating an executable or a shared library/DLL, the -static compiler option can be used to tell the compiler to prefer linking against static libraries rather than shared libraries/DLLs. That way, if the linker finds both static and shared versions of a library, it will use the static version, rather than defaulting to the shared version.
Installing the proper static libraries and then using -static can be used to avoid some or all dependencies on shared libraries.
- On Linux & co it is possible to create purely statically linked executables, because static versions of the system libraries used by FreeBASIC are available.
- On Windows, there are no static versions of the system libraries, but -static can still be useful to decide between static library or DLL versions of other libraries, if both are installed.