Installation of Freepascal on a AROS i386 machine
- a fully installed AROS i386 ABIv0
- developer tools (try to type ld in a shell if you get "ld: no input files" then everything is ok) should be included in all major distributions. If not you have to download the nightly iso from AROS page open it and copy the Developer folder to your System:
- binary release of fpc-aros-i386
If you want to install the FreePascal from the archive and choose not to install it over an existing installation of FreePascal (as can be found on distributions like Icaros), then you have to make sure the existing installation is 'deactivated'.
You can check where and if an current installation is present by opening a shell and type "which fpc" (without the quotes) and pressing enter. If this prints a result then a current installation of Freepascal is 'active'. If you type "path" (without quotes) and press the enter key in the shell, you could see the currently active paths. If you see a path which looks similar to Device:Drawerx/drawery/fpc/bin (especially the last part fpc/bin) then this path should be removed as well. In Icaros this can be done by editing the file s:icaros-sequence, and look for an entry that looks like "PATH Device:Drawerx/drawery/fpc/bin ADD".
This entry needs to be either removed in case you choose the Easy Way of installation or changed to where you installed FreePascal when choosing the Expert way of installation.
Easiest way to install it, but you get a mix up of the C Developer files of AROS and the Freepascal files.
- Unpack the archive file to RAM:
- Copy the contents of the folder pp to Development: (in most cases it points to System:Development)
- open shell and type fpc if you get help for fpc then everything is ok
Better way of installing freepascal to an own folder with all files included, but needs some more work and understanding how AROS work.
- make sure you removed all other/older fpc versions from the path
- Unpack the archive file
- in the folder pp all freepascal related programs, libaries, object, units and examples are included
- make sure the PATH is pointed to the bin Folder
- edit the bin/fpc.cfg and change all -FU:Development:... to your pathes
- if you want to use the FP-Editor you have to do the same changes in fp/fp.cfg
Compile Freepascal from Source
A very brief description how freepascal can be compiled from the source.
On a AROS i386 machine
Every standard i386 AROS machine is suitable hosted or native, 500 MiB RAM should be available (maybe less will work I never tried) and around 300MiB harddisk space. You need an already installed freepascal compiler (see above), because freepascal is written in pascal.
- Download the latest Source release
- Copy the downloaded: fpcsrc-*.tgz to the folder, where you want to place the source
- Extract the source with: (replace the * with the date used the the downloaded file for example: fpcsrc-20131120.tgz)
tar -zxvf fpcsrc-*.tgz
- A folder fpcsrc is created with the sources inside, change to the folder
- We have to create the Makefiles for compilation. Usually the Makefiles are created by ALB already and included in the archive, but to be sure, lets create them again. If you get error messages like The Makefile does not support i386-aros when running make run fpcmake in the folder where the error appear.
- navigate to the compiler (in principle you could also start in the top dir, but then you get path problems unix <> amiga style pathes):
- Compile the compiler. It needs long time because the compiler will be build twice, frist with the "old" already installed fpc and the again with the freshly build fpc
- make an assign PP: to install the compiler (and later the units as well) for example:
assign pp: dh1:pp
- Install the compiler, if all went well it can be found in pp:bin/i386-aros
- As next step we compile an install the rtl so we change to rtl folder compile and install it. The rtl contains very basic functions of freepascal without them the compiler is rather useless (at least the system unit is always needed). The units will be installed into pp:units/i386-aros/rtl
cd /rtl make make install
- Now we have an already useable fpc, but of course we want all the additional packages as well (and the FP-IDE). We compile all the packages. There are some more aros specific in arosunits included. The units will be also installed to pp:units/i386-aros every packages with its own folder.
cd /packages make make install
- As last point we can compile the FP-IDE and install it. It will also be installed to pp:bin/i386-aros.
cd /ide make make install
- If you want to compile the fpcmake util (compare 5. Point) navigate to fpcsrc/utils/fpcm then run:
fpcmake make make install
- If you want save some space you can clean all the compiled objects from the harddisk (or want to force a recompile after changing include files)
change to the directory you want to clean (or to top directory fpcsrc if you want clean all) and run:
Attention: If you change something in the code you have to compile everything what depends on: For example if you changed something in rtl, you have to clean and compile the packages again or you get magic number errors when you try to use the units from packages.
cd /rtl make clean install cd /packages make clean install
Usually the compiler does not need to be recompiled (with some obvious exceptions, when you fix bugs in compiler/compiler-related rtl code).
Crosscompile from Linux
This section describe how the freepascal compiler with all units can be created under a linux system. This could be important if you start without a working freepascal at aros.
- A working linux system (CPU is not important, i386 and x64 tested other platform might work)
- A freepascal compiler for this linux (Version >= 2.4) (e.g. at Ubuntu/Debian
apt-get install fpc)
- You need a the pc-i386-sdk for aros from the AROS Page
- Unpack the sdk: (replace the * by the date of the downloaded file) it creates a folder with the name as the file, change into the directory
tar -zvxf AROS-*-pc-i386-sdk.tar.bz2 cd AROS-*-pc-i386-sdk
- Compile and install the SDK (must be done as root, so change to root or use sudo)
- Add path to the SDK bin folder
- Download the FPC for AROS Source
- Unpack the file to a directory you prefer, change to the created directory
tar -zvxf fpcsrc-*-tgz cd fpcsrc
- As first we have to create a
fpcmakewhich supports i386-aros, to do it change to the fpc make directory
- start fpcmake to create the makefile and compile the fpcmake tool
- now we can go to main directory of fpc and create all the Makefiles for all platforms (in principle could also do for the two needed platforms but for all is easier)
cd ../.. utils/fpcm/fpcmake -r -Tall
- Now everything is set for make the compiler, we choose
zipinstallto create directly a packed version
make zipinstall CPU_TARGET=i386 OS_TARGET=aros
- now you have a complete archive with the AROS freepascal compiler with all units and utilities