Cross-compilers - 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-compilers

Famous quotes containing the words free and/or pascal:

    The English people believes itself to be free; it is gravely mistaken; it is free only during election of members of parliament; as soon as the members are elected, the people is enslaved; it is nothing. In the brief moment of its freedom, the English people makes such a use of that freedom that it deserves to lose it.
    Jean-Jacques Rousseau (1712–1778)

    We need not have the loftiest mind to understand that here is no lasting and real satisfaction, that our pleasures are only vanity, that our evils are infinite, and, lastly, that death, which threatens us every moment, must infallibly place us within a few years under the dreadful necessity of being forever either annihilated or unhappy.
    —Blaise Pascal (1623–1662)