Recent

Author Topic: Puppy Linux  (Read 25919 times)

LazaruX

  • Hero Member
  • *****
  • Posts: 597
  • Lazarus original cheetah.The cheetah doesn't cheat
Puppy Linux
« on: December 10, 2008, 01:30:09 pm »
Could anybody get Lazarus on Puppy Linux working?
If yes how?

guastatore

  • New Member
  • *
  • Posts: 10
Re: Puppy Linux
« Reply #1 on: December 19, 2008, 09:38:05 pm »
What's the problem do you have ? And what version of Puppy Linux ?

AFAIK I should

1. Download devx_xxx.sfs file and put it into the / of your pupsave file. Then reboot
2. Download fpc 2.3.1 sources then make clean all and make install.
3. Download Lazarus sources, then make clean all, then ./lazarus and you have it

Antonio

TheBlackSheep

  • Jr. Member
  • **
  • Posts: 93
Re: Puppy Linux
« Reply #2 on: December 20, 2008, 10:40:53 pm »
I've started from a fresh install of Puppy4 and I reckon if you follow this (hopefully) you'll be able to get Lazarus installed on Puppy...

I've done this from a standard Puppy 411 installation (i.e. frugal with just the minimum configuration - keyboard, network, sound). Go through the normal initial process to generate the pup_save.2fs file (i.e. shutdown Puppy and create a 2fs file).

Next get devx_411.sfs (or equivalent for your version) and put it into the root folder where puppy was loaded from.  You'll need that to initially compile fpc (the free pascal compiler).

Open a terminal and type "gcc" (without the quotes) - if you get "command not found" then devx_xxx.sfs isn't loaded.  So you need to load this by going into the "Boot Manager" on the System menu, the files in the left window are those loadable and move it to the right using the arrows in the centre.  Once you've said to Puppy to load it at startup you can retry typing "gcc" in a  terminal to see if it is loaded - however, you might need to reboot to load it.

Anyway, you basically need to get to the point where typing "gcc" in the terminal window returns "gcc: no input files".  This means the gnu-c compiler has loaded, now we can start on getting fpc installed which is needed for Lazarus.

Ok go to

http://sourceforge.net/project/showfiles.php?group_id=89339&package_id=192182

You'll need the "fpc-2.2.2.i386-linux.tar" file first, so download that to your "My Documents" folder.

and then the same with  Lazarus "lazarus-0.9.26-0.tgz"

For lazarus, you also need the fpc source which you can download from...

http://downloads.sourceforge.net/freepascal/fpc-2.2.2.source.tar.gz?download

ok now browse to your "my-documents" folder and click on the first fpc tar file (i.e. not the source tar file). XArchive should open the file - there are four files in here, select them all and extract them - I created a folder called fpc under "my-documents" and put them in there.   

Go back to your terminal and navigate to your my-documents folder as in

"cd ~my-d*"

do an "ls" just to check you are now there and can see the files you downloaded and the folder "fpc".

now do a cd into the fpc folder

"cd fpc"

again "ls" or "pwd" to see that you are in the right folder.

ok now type "./install.sh" and press return and just keep agreeing to all the defaults...

when it's finished and taken you back to the prompt, type "fpc" and it should return a page of information for the Free Pascal Compiler v2.2.2, keep pressing enter till the output completes.  Ok 1/2 way there...

Ok first things first, we need to install gtk1 (gtk2 is installed by default) but Lazarus is currently a gtk1 application.  Install gtk+12.1.2.10 from the "Official Puppy3" option within the "PETget package manager".

This should also install glib12, imlib and gdk_pixbuf (and these library files libgdk-1.2.so.0.9.1, libgtk-1.2.so.0.9.1 and some missing library dependencies  - libgmodule-1.2.so.0 libglib-1.2.so.0 libgmodule-1.2.so.0 libglib-1.2.so.0)

Now we need to let the compiler know that we've got everything we need so it can link everything.  In the terminal window, type "cd /usr/lib" (takes you to the "/usr/lib" folder) and then type

"ln libglib-1.2.so.0 libglib.so"
then...
"ln libgdk-1.2.so.0 libgdk.so"
and
"ln libgtk-1.2.so.0 libgtk.so"
and
"ln libgdk_pixbuf.so.2 libgdk_pixbuf.so"
and
"ln /usr/lib/X11R7/lib/libXi.so.6.0.0 libXi.so"

What we've done here is create some symbolic links to the actual files that fpc will need to be able to link Lazarus at the end of the compilation - without this you'll get errors when it tries to build the Lazarus application.

Go back to the file browser (Rox-filer or whatever) and click on the Lazarus file you downloaded earlier.  The compressed file will open in XArchive (may take a few seconds as there's a lot here), press the "Select All" button and then "Extract".  Now I struggled here to have enough memory (remember Puppy installs almost completely into memory) to hold Lazarus and compile it within the normal puppy file system.  I suggest if you can put the extracted files outside the puppy filesystem. I have a frugal install and my running files sit on an ext2 file system so I just extraced the files to the root of that, this way it won't affect your running memory.   

So when you extract it'll ask for the folder where you want to put the files - as mentioned above I browsed to the underlying file system.

Ok now you need to navigate to the folder where you've just extracted the lazarus source, so this will be something like "cd /mnt/home/lazarus" or alternatively browse to the folder in rox-filer, right-click and on the "Window" menu option click "Terminal here".

type "ls" and you should see all the files you've just extracted.

ok final bit - type "make" and all the various units will be compiled, hopefully without error. 

Once it is built it should have created a file called "startlazarus". Click on this and Lazarus will (should?) launch.  It might give an error when it starts about not finding the fpc source, if you go to "Environment"->"Environment Options" you'll see a blank option in "FPC source directory" - to fix this go back and open the "fpc...source" file.  Now again, there's a lot of files here so ideally we want these outside the puppy memory based filesystem. "Select All" and "Extract" these to the "Lazarus" folder (in my case this is effectively "/mnt/home/lazarus").  On my system this folder looks like "/initrd/mnt/dev_save/lazarus/fpc-2.2.2/", hopefully no more errors and you've got a working Lazarus running on Puppy!

Ok that's it, you could of course create a shortcut on the desktop or in the menu to the "startlazarus" file to make it easier to run...

Best of luck!

Chris

alejol0

  • Jr. Member
  • **
  • Posts: 60
  • Electronic technician
    • My Facebook page
Re: Puppy Linux
« Reply #3 on: May 04, 2009, 09:07:00 pm »
I have tried the instructions but Lazarus do not want to be compiled.
I have used Puppy Linux 4.2
Have downloaded dev_420.sfs and Free Pascal source, and I have
fpc compiler working.
But the gtk libray do not have some *pixbuf* file, and Lazarus IDE
never appears.
Can anyone make an installer of Lazarus for Puppy Linux 4.2?
Contact me: lavarello1966 (at) gmail . com
or
alejandro.lavarello (at) gmail (dot) com

guastatore

  • New Member
  • *
  • Posts: 10
Re: Puppy Linux
« Reply #4 on: May 04, 2009, 09:52:08 pm »
I have tried the instructions but Lazarus do not want to be compiled.
I have used Puppy Linux 4.2
Have downloaded dev_420.sfs and Free Pascal source, and I have
fpc compiler working.
But the gtk libray do not have some *pixbuf* file, and Lazarus IDE
never appears.
Can anyone make an installer of Lazarus for Puppy Linux 4.2?

Try to compile Lazarus with:
make clean all LCL_PLATFORM=gtk2

Anyway, try to find on puppy forum gdk_pixbuf library and install it. If you can't find it try to put on your puppy file system an ubuntu package: http://packages.ubuntu.com/dapper/libgdk-pixbuf2 . Use undeb in Puppy to esplode the package and manually copy it onto / .

Antonio

TheBlackSheep

  • Jr. Member
  • **
  • Posts: 93
Re: Puppy Linux
« Reply #5 on: May 11, 2009, 11:28:41 pm »
update for 4.2.1RC1 (i.e. the version of puppy here... http://distro.ibiblio.org/pub/linux/distributions/puppylinux/test/puppy-421-test/)

I installed a frugal installation, generated a 2fs file and copied devx_420.sfs as devx_421.sfs and ensured it was loaded before I began the lazarus installation (i.e. run a terminal and type gcc - if you get "no input files" then it's installed)

I then downloaded the latest fpc (fpc-2.2.4.i386-linux.tar)
and lazarus (lazarus-0.9.26.2-0.tgz)

I put these inside a new folder outside the memory filesystem (i.e. in /mnt/home/lazarus/). I extracted the files from each into two separate folders underneath these.

I then installed from the Puppy3 repository the following files;

gtk+12-1.2.10
glib12-1.2.10
gdk_pixbuf10-0.22.0

Note: installing the first pet file should install the second but not necessarily the third. Either way, it is essential to get these files installed.

Once this is done, run a terminal and navigate to the /usr/lib folder and enter the following commands

ln libgtk-1.2.so.0 libgtk.so
ln libgdk-1.2.so.0 libgdk.so
ln libgdk_pixbuf.so.2 libgdk_pixbuf.so

this creates the symbolic links to the relevant files (the one's lazarus needs) that you downloaded via the Petget manager

ok now navigate to the fpc folder and type

./install.sh

you should see a load of options to install various things like the command line IDE, the path and various options - just accept the defaults.  At the end of this you should be able to type "fpc" and see the output from the Free Pascal Compiler 2.2.4 (almost done now...)
 
ok, if you got this far then now navigate to the lazarus folder (i.e. cd ../lazarus)

then type "make" and just let it run (should take a couple of minutes).  At the end of the compilation process, assuming it didn't error then you should have a working lazarus. 

Just type ./startlazarus and there you go - lazarus should fire up (you'll need to setup the fpc source folder as per my previous comment).

If you get errors whilst compiling lazarus then chances are the symbolic links (the "ln ..." commands above) aren't created properly - check that the source files exist in the usr/lib folder (the command is "ln <source-file> <symbolic link>") - if you look for them in the usr/lib folder using "ls -al" in the terminal window you'll see the file that the symbolic link is pointing at - the light-blue files are the symbolic-links and the green files are the real files they refer to with the arrow "->" ).

best of luck

Chris
 




tatamata

  • Hero Member
  • *****
  • Posts: 734
    • ZMSQL - SQL enhanced in-memory database
Re: Puppy Linux
« Reply #6 on: May 12, 2009, 10:56:28 am »
TheBlackSheep,

Could you make Lazarus .pet package?

Regards

By the way, Puppy is an amazing distro...

alejol0

  • Jr. Member
  • **
  • Posts: 60
  • Electronic technician
    • My Facebook page
Re: Puppy Linux
« Reply #7 on: May 23, 2009, 04:20:17 pm »
I have tried to compile Lazarus.
Now, I have downloaded gdk_pixbuf10-0.22.0 and fpc compiles and works OK.
Then, I have created the links:
ln libgtk-1.2.so.0 libgtk.so
ln libgdk-1.2.so.0 libgdk.so
ln libgdk_pixbuf.so.2 libgdk_pixbuf.so
OK to this point.
Then, I have tried to compile Lazarus. But it ends with:

Linking ../lazarus
/usr/bin/ld: cannot find lglib
lazarus.pp(122,1) Error: error while linking
lazarus.pp(122,1) Fatal: there were 1 errors compiling module, stopping


Please, please, can any make a .pet package for Lazarus???

Contact me: lavarello1966 (at) gmail . com
or
alejandro.lavarello (at) gmail (dot) com

alejol0

  • Jr. Member
  • **
  • Posts: 60
  • Electronic technician
    • My Facebook page
Re: Puppy Linux
« Reply #8 on: May 24, 2009, 12:43:34 am »
Puppy 4.2.1RC1 is unavailable at
http://distro.ibiblio.org/pub/linux/distributions/puppylinux/test/puppy-421-test/
Because this, I was triying to compile using Puppy 4.2
Some X11R7 (or something with R7) directory do not exists in Puppy 4.2
Contact me: lavarello1966 (at) gmail . com
or
alejandro.lavarello (at) gmail (dot) com

TheBlackSheep

  • Jr. Member
  • **
  • Posts: 93
Re: Puppy Linux
« Reply #9 on: May 27, 2009, 09:48:47 am »
Hi alejol0

The folder I pointed to previously was where the Relaease Candidate (RC1) was held - as the final release has been created these RCn versions have now disappeared.  You want to go here;

http://distro.ibiblio.org/pub/linux/distributions/puppylinux/

and download the puppy labeled

puppy-4.2.1-k2.6.25.16-seamonkey.iso

this is the final 4.2.1 release and this should have the relevant libraries as per the RC1 so my previous instructions should work hopefully.

I see you almost got there with your previous attempt - don't give up!  As things keep moving (Lazarus, FPC & Puppy) a PET or SFS for Lazarus might not the best solution IMHO - as soon as it's built it'll be out-of date or might won't work with the newer Puppy (next version 5 should be really good hopefully) and then you'd be back at square one.  Once you get over this hurdle you'll be better placed to rebuild whenever you want to.

You mentioned a "lglib" missing - this points to the glib library either not being installed or the symbolic link missing and if you've installed glib from the Puppy 3 repository via the Pet Package Manager then it maybe that in the version of puppy you are using the symbolic link wasn't there whereas in the version I used it was.  Anyway, to fix this go to the /usr/lib folder and see if there is a symbolic file called "libglib.so" there or if the source file "libglib-1.2.so.0" is there - you might just need to open a terminal window in this folder and type the command;

ln libglib-1.2.so.0 libglib.so

as you did for the others and then try rebuilding Lazarus again.

This was in my previous instructions but not in the latter one's so it maybe that the latest puppy (4.2.1) has this but not the version you downloaded (I'm currently running NOP's 4.1.3 build so can't check) - either that or I missed it off the last instructions I made and, if this is the case, I apologise.

Keep trying and don't get too frustrated - you're so close to being able to compile/build Lazarus yourself and once you are there it'll be so much easier when the next release of whichever element comes along and you need to rebuild (I think when Lazarus goes GTK2 which I think is reliant on the next big FPC release hopefully most of the issues here will go away - Puppy4+ has GTK2 already so there'll be no messing around with the older libraries).

Chris


alejol0

  • Jr. Member
  • **
  • Posts: 60
  • Electronic technician
    • My Facebook page
Re: Puppy Linux
« Reply #10 on: June 07, 2009, 10:40:08 pm »
Have installed FPC another time, and a "Hello world" compiles OK.

Have installed all gtk  and gdk and such stuff.

Following your instructions, have putted the source files for Lazarus
in the D: disk of this PC (it has 2 NTFS partitions).

Decompressed   lazarus-09.26.2-0.tgz  files are in /mnt/home/lazar/lazarus .
Then, I have compiled with success!!
I go to /mnt/home/lazar/lazarus  and open a terminal here.
Then, run  ./startlazarus  and the IDE  opens!!

But this ugly banner appears:
--------------------------------------------------------------
"The Free Pascal source directory was not found.
Some code functions will not work.
It is recommended that you install it and set the path
Environment -> Environment Options -> Files"
------------------------------------------------------------
Clic in "Ignore" and the IDE appears.
I have tried so many directories related to FPC and Lazarus,
but not have discovered a "FPC source directory" that
Lazarus liked.

Then I put a button and an edit box in the fresh new form
that appears, and then I tried to write some code into the button ...
bum! :
-------------------------------------------------------------
The component editor of class "TDefaultComponentEditor" has created the
error:
"Unable to find method. Please fix the error shown in the message window."
-------------------------------------------------------------

____________________________________________
Actual configuration:

  Lazarus directory (default for all projects)
  /initrd/mnt/dev_save/lazar/lazarus/

  Complier path (e.g.fpc)
   /usr/local/lib/fpc/2.2.4/ppc386

    FPC source directory
    (empty string, I have tried a lot without luck)

   Make path
   /usr/bin/make

   Directory for building test projects
    /tmp/
_____________________________________________

I appreciated very much some help.

Sorry for my insistence. I dont know for what is so difficult
to install an application in Linux.

WHY on EARTH the Lazarus installer do not contain all the stuff,
and the Windows installer has all that it needs??????????

Really, a pet package can help a lot of people.
Contact me: lavarello1966 (at) gmail . com
or
alejandro.lavarello (at) gmail (dot) com

Marc

  • Administrator
  • Hero Member
  • *
  • Posts: 2512
Re: Puppy Linux
« Reply #11 on: June 08, 2009, 01:20:16 am »
did you install the fpc sources ?
//--
{$I stdsig.inc}
//-I still can't read someones mind
//-Bugs reported here will be forgotten. Use the bug tracker

TheBlackSheep

  • Jr. Member
  • **
  • Posts: 93
Re: Puppy Linux
« Reply #12 on: June 08, 2009, 09:15:12 am »
Hi Alejo

Well done! just the fpc sources to sort.

Regarding the FPC source path - see my first post - the last but one paragraph.  The FPC sources are a separate download (also see Marc's reply to you today).  Just extract these to your file system, change the folder in Lazarus to point to where you extracted them and voila you have a fully working Lazarus.  If you've got this far then this final bit should be easy.  Make sure you get the sources file related to the FPC you downloaded (i.e. the same version).

As I mentioned, I'm not sure a PET or an SFS is the best course here when FPC/Lazarus is in active development.  Now you've done this once you can do it again each time either of these applications is updated and you definitely will want to do this when FPC goes to 2.3/2.4 and/or Lazarus is updated, and especially when it goes to GTK2 (at that point the install should be a lot easier as all the GTK1 libs shouldn't be necessary).

Anyway, well done - once you've done this final bit you could build a PET/SFS yourself (I think the latter makes more sense in Puppy because of the size of FPC/Lazarus) and be the provider of this to the Puppy community ;-).

Chris 

alejol0

  • Jr. Member
  • **
  • Posts: 60
  • Electronic technician
    • My Facebook page
Re: Puppy Linux
« Reply #13 on: November 12, 2009, 07:32:39 pm »
Finally, I have success installing Lazarus in Puppy Linux 4.3.1 and have created an .iso which is an exact image ready to use.

The .iso is very huge (330 MB), and need a Pc with 480MB of RAM (because is a live CD). In the future, maybe I can create an .sfs or a .pet, but I do not have enough knowledge.

You can download the .iso file:
Puppy_4_3_1_with_Lazarus_0_9_28_2_needs_480MB_RAM.iso
from these locations:
http://www.megaupload.com/?d=10836C0B
http://www.megaupload.com/?d=EHKHH6Z8
http://www.megaupload.com/?d=8EEGOFVW

The MD5 sum is fa94102ecf1bf5c29f629148667399fc

Thanks TheBlackSheep for your support!
Contact me: lavarello1966 (at) gmail . com
or
alejandro.lavarello (at) gmail (dot) com

 

TinyPortal © 2005-2018