---ripped from their page [start]--- So just what is Lazarus? Lazarus is the class libraries for Free Pascal that emulate Delphi. Free Pascal is a GPL'ed compiler that runs on Linux, Win32, OS/2, 68K and more. Free Pascal is designed to be able to understand and compile Delphi syntax, which is of course OOP. Lazarus is the part of the missing puzzle that will allow you to develop Delphi like programs in all of the above platforms. Unlike Java which strives to be a write once run anywhere, Lazarus and Free Pascal strives for write once compile anywhere. Since the exact same compiler is available on all of the above platforms it means you don't need to do any recoding to produce identical products for different platforms. ---ripped from their page [end]--- I could just describe it as a free open-sourced IDE with a kylix/delphi touch (and a bit less bloat, polish and features) that's based on Free Pascal and doesn't need wine to run (as kylix does!)
I'll see what I can do, no promises though :)
Created attachment 35115 [details] lazarus-0.9.1.4.ebuild I made an ebuild. But I could not test it properly since I have got no gtk. Feel free to use it and work on it. Please note, that fpc-1.9.3 or greater is needed. You find an ebuild in Bug #56608
Anyone tested this?
Yes, I tested it right now. I installed the fpc 1.9.4 (the package, not from source) and lazarus 0.9.1.4 (from your ebuild). However, sadly, I could not get it to run. It seems to be only a tiny bit to get it working, however. Lazarus starts up fine, the whole IDE shows up and everything. When starting, it complains: "The Free Pascal Source directory was not found. Some functions will not work. It is recommended that you install it and set the path Environment -> Environment Options -> Files" I only have an "Ignore" button then. Alright, I thought, let's set the path. However, it did not accept any of my inputs. What came close was /usr/lib/fpc/1.9.4/units/linux/ but I also tried /usr/lib/fpc/1.9.4/units/ /usr/lib/fpc/1.9.4/ /usr/lib/fpc/ /usr/lib/ Nothing worked. It always said "The FPC Source directory '/usr/lib/fpc/' does not look correct. Normally it contains directories like rtl, packages, compiler, ... ." Then I downloaded the FPC source from the FPC homepage. However, even in these sources I could not find an "rtl" directory! It did not accept the path of the "clean" sources, either. Therefore I can now run the GUI, but cannot compile any programs. It always fails with "/tmp/project1.lpr(1,1) Fatal: Can't find Unit GLIB" (line 1 of the project file is the "program project1;" line). Could you maybe have a look into that, please? I really would be grateful if lazarus made it into the Gentoo tree as it is a great tool for developing GUI-applications fast (!). Thanks for your work so far! Greetings, Johannes
tad is not an active developer.
The lazarus ebuild works, but you need the sources of fpc. I have written an ebuild: http://bugs.gentoo.org/show_bug.cgi?id=69336 /usr/lib/fpc only contains the binaries, the sources can be found in /usr/share/src/fpc-1.9.4 after you install fpcsrc (so fpcsrc has to be a dependancy of lazarus) So perhaps it's time to get this into portage...
Okay, I've tried that out (installed fpcsrc). Lazarus now finds the sources and doesn't complain anymore. However, it still quits with the very same error message (console when trying to execute a program): ---------- [TMainIDE.DoRunProject] A TMainIDE.DoSaveAll TMainIDE.DoSaveProject A SaveAs=FALSE SaveToTestDir=FALSE TMainIDE.DoSaveProject End [TCompiler.Compile] CmdLine="/usr/bin/ppc386 -Rintel -S2cgi -CD -OG1p1 -gl -XD -vewnhi -l -Fu/usr/share/lazarus/lcl/units/i386/linux/ -Fu/usr/share/lazarus/lcl/units/i386/linux/gtk/ -Fu/usr/share/lazarus/packager/units/i386/linux/ -Fu. -dLCL /tmp/project1.lpr" Free Pascal Compiler version 1.9.4 [2004/05/30] for i386 Copyright (c) 1993-2004 by Florian Klaempfl Target OS: Linux for i386 Compiling /tmp/project1.lpr Fatal: Can't find unit GLIB [TMainIDE.DoOpenMainUnit] A ProjectLoading=FALSE MainUnitID=0 ---------- Can't find GLIB? Where is it? Greetings, Johannes
You are probably missing a fpc config file, typically /etc/fpc.cfg There are some more details on http://lazarus-ccr.sourceforge.net/index.php?wiki=LazarusFaq You'll need those lines in the config file: -Fu/usr/lib/fpc/1.9.4/units/$target -Fu/usr/lib/fpc/1.9.4/units/$target/* -Fu/usr/lib/fpc/1.9.4/units/$target/rtl There is a script to create a sample config file: /usr/share/src/fpc-1.9.4/compiler/utils/samplecfg I will suggest running this script in the fpcsrc-ebuild so that the fpc.cfg file will be installed by default.
Works! Okay, here's the story: I almost was so far that I'd have trashed the whole thing. It annoyed me pretty much, kept not working and so on. I compiled on the command line, always adding more include paths to figured out what I needed. But it kept requiring more and more libraries. After he found GLIB, he required GTK, GTKInt and some others. Horribly annoying. Then I read your posting again (because I wanted to write I didn't succeed). And found you refered to that script. Well, first, I had to mark it executable and then I ran it. Worked perfectly. Like a charm. Everything working now. Thanks! Here's what I did (as root): chmod +x /usr/share/src/fpc-1.9.4/compiler/utils/samplecfg /usr/share/src/fpc-1.9.4/compiler/utils/samplecfg /usr/lib/fpc/1.9.4 /etc Greetings, and thanks again, Johannes
I noticed that the permissions for /usr/share/lazarus/tools/runwait.sh were not right - I had to add execution permissions manually in order to run any of my programs. So the following line should be added to the ebuild (in the src_install() section): chmod 0755 ${D}/usr/share/lazarus/tools/runwait.sh
Please be aware of bug #71677
*** Bug 75458 has been marked as a duplicate of this bug. ***
*** Bug 82818 has been marked as a duplicate of this bug. ***
*** Bug 72972 has been marked as a duplicate of this bug. ***
Anyone working on this? If so, tell me. Otherwise I'll start it.
I tried the installation of this ebuild. The dependencies installed all well - nothing seemed to make any problem, until.... [ last lines of the compiler-messages: ] Writing Resource String Table file: lclstrconsts.rst Compiling fpcadds.pas Compiling lazlinkedlist.pas Compiling dynhasharray.pp Compiling lclproc.pas Compiling lcltype.pp Compiling lclmemmanager.pas Compiling avglvltree.pas Compiling stringhashlist.pas Compiling extendedstrings.pas Compiling dynamicarray.pas Compiling utrace.pp Compiling textstrings.pas Compiling lclrescache.pas Compiling graphmath.pp Compiling filectrl.pp Compiling stdctrls.pp Compiling lmessages.pp Compiling graphtype.pp Compiling graphics.pp Fatal: Can't find unit Contnrs make[1]: *** [alllclunits.ppu] Error 1 make[1]: Leaving directory `/var/tmp/portage/lazarus-0.9.6/work/lazarus/lcl' make: *** [lcl] Error 2 !!! ERROR: dev-lang/lazarus-0.9.6 failed. ... the ebuild seems to lack something. Is anyone maintaining this ebuild, or shall I try to recreate it?
I am maintaining lazarus and fpc stuff in a way. Your error looks pretty much like a misconfiguration. Check your /etc/fpc.cfg Make sure it looks like this: <stuff> -Fu/usr/lib/fpc/1.9.8/units/$fpctarget -Fu/usr/lib/fpc/1.9.8/units/$fpctarget/* -Fu/usr/lib/fpc/1.9.8/units/$fpctarget/rtl <otherstuff> -Fl/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5 <yetmorestuff>
Ok, I see lazarus is in the tree already. Thanks Daniel! Hopefully I can start in June to be more productive (when I finally move to a new place). Closing this bug. George