Hi I want to get free Pascal / Lazarus running on the pi. I need to know how to make the free Pascal compiler for an arm processor or get a pre compiled binary. Has any one managed to do this yet ?
Jack
zog wrote:UPDATE
Thanks to darkbasic I now have Debian wheezy up and running on the pi. I have installed the LXDE desktop, fpc and Lazarus on my pi. This morning I wrote a simple program using Lazarus on the pi which compiled the code some what slowly, but it ran.
This is major progress - I will try to put an image of my disk some where up on my web site when I get chance, work allowing. Also fp works much better under wheezy.
Jack Taylor
Lazarus will be in raspbian, I just don't want to put the package with armhf support in raspbian before I've put it in debian sid.HeadCase wrote: With the current Raspbian image apt-get install fpc will find and install fpc 2.6.0, however apt-get install lazarus fails due to unmet dependencies and complains about held broken packages.
Thanks for clearing that up - I'm sure lots of people will be keen on trying lazarus. There has been quite a lot of Delphi/Lazarus code written over the last 10-15 years which could potentially make a big difference to the RPi software pool. Some very well known tools like Protel (PCB/Schematic CAD) were written in Delphi.plugwash wrote:Lazarus will be in raspbian, I just don't want to put the package with armhf support in raspbian before I've put it in debian sid.HeadCase wrote: With the current Raspbian image apt-get install fpc will find and install fpc 2.6.0, however apt-get install lazarus fails due to unmet dependencies and complains about held broken packages.
When I try to compile a project, I get an error message "Cannot find Unit interfaces"
When I try to compile a project, I get an error message "Cannot find Unit interfaces". How can I solve this?
It means the compiler can not find the file 'interfaces.ppu' or the file was found, but it is wrong or outdated (the .ppu file date code is older than the date code of the compiler itself). Testing the compiler option settings can help debug these issues, via Project: Compiler Options... (use the Test button at the bottom of the dialog). This test will also verify that the {TargetCPU} and {TargetOS} variables are set properly.
This unit can be found in {LazarusDir}\lcl\units\{TargetCPU}-{TargetOS}\{LCLWidgetSet}\interfaces.ppu. For example: /home/username/lazarus/lcl/units/i386-linux/gtk/interfaces.ppu.
It is normal to have multiple versions of interfaces.ppu (in the proper directories) to allow compiling with different widgets.
If you selected a different widgetset for your project than was used to build Lazarus, you may need to build the LCL for the selected widgetset.
If the interface.ppu file is in the folder matching the OS and CPU you selected in the project preferences, and you get this error, you are using a different compiler / rtl for compiling your project than you used for compiling your Lazarus IDE, or if the libraries need to be recompiled to give the .ppu files newer compilation dates. You can do one of the following
Rebuild the LCL (or Lazarus completely) with the compiler selected in the Environmnent Options. You can do this with Tools -> Build Lazarus. Before doing this, check the current settings in Tools -> Configure Build Lazarus.
Change the compiler in the Environment Options to the one you used to compile Lazarus. Look carefully also in the Environment Options to see if you are using the correct paths for the Lazarus Directory and the FPC sources directory. Check that there is only one version of the compiler configuration file fpc.cfg - it should reside in /etc/ for Linux/Unix systems or in the same directory as the fpc compiler for Windows systems. Try to run "fpc -vt bogus" to check which fpc.cfg is being used in your system. Rogue copies often creep in if you have updated your compiler to a new version; they may be found in your home directory or in the same directory as the one in which you built your new compiler. DELETE THESE!
You may also try to change the widgetset currently selected for the project. For example, the sample project "objectinspector" that comes with Lazarus is set to gtk by default. Compiling this project will surely give you "Can't find unit interfaces" in Windows platform. Changing widgetset to default(Win32) in Project | Compiler Options... | LCL Widget Type (various) should fix this issue.