Cross Compiler - Free Pascal

Free Pascal

Free Pascal was developed from the beginning as a cross compiler. The compiler executable (ppcXXX where XXX is a target architecture) is capable of producing executables (or just object files if no internal linker exists, or even just assembly files if no internal assembler exists) for all OS of the same architecture. For example, ppc386 is capable of producing executables for i386-linux, i386-win32, i386-go32v2 (DOS) and all other OSes (see ). For compiling to another architecture, however, a cross architecture version of the compiler must be built first. The resulting compiler executable would have additional 'ross' before the target architecture in its name. i.e. if the compiler is built to target x64, then the executable would be ppcrossx64.

To compile for a chosen architecture-OS, the compiler switch (for the compiler driver fpc) -P and -T can be used. This is also done when cross compiling the compiler itself, but is set via make option CPU_TARGET and OS_TARGET. GNU assembler and linker for the target platform is required if Free Pascal doesn't yet have internal version of the tools for the target platform.

Read more about this topic:  Cross Compiler

Famous quotes containing the words free and/or pascal:

    A counterfeiting law-factory, standing half in a slave land and half in a free! What kind of laws for free men can you expect from that?
    Henry David Thoreau (1817–1862)

    Thus passes away all man’s life. Men seek rest in a struggle against difficulties; and when they have conquered these, rest becomes insufferable. For we think either of the misfortunes we have or of those that threaten us.
    —Blaise Pascal (1623–1662)