Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2010-06

Wiki instructions for installing FPC trunk

14 messages · 9 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Juha Manninen

I updated info about building and installing svn trunk version of FPC compiler, based on mails from Marc and Graeme earlier. Here:

http://wiki.lazarus.freepascal.org/Getting_Lazarus#svn_trunk_version_of_fpc

It is part of a long messy page, Getting_Lazarus, which could be cleaned a lot.
This is a typical problem with wiki pages. The contents may be good and accurate but nobody takes care of the overall structure. I could try to clean it in future but now let's check this FPC installation part. There was a text (not by me):

There are many ways to compile and install FPC. You can use plain make (see below), but it is recommended to build a fpc package for your distribution (.deb or .rpm file). A fpc package allows to easily uninstall, upgrade and downgrade it and a package makes sure that all files are installed at the common places. So if something goes wrong, other users know how to help you.

The text "You can use plain make (see below)" was a ToDo item I guess. I added info for "make all" and "make install" under section "Building and installing the svn version of fpc".

Then it says "it is recommended to build a fpc package for your distribution (.deb or .rpm file)".
Why would it be recommended? I tried to build such RPM package when installing FPC trunk for the first time, but I failed.
Still I was able to install it using "make all" and "make install" and it has been very easy to update since then.
So, I would say making a distro package is the more difficult way and the recommendation should be changed.

Someone please check that the facts are correct in my wiki changes.

Juha
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20100627/664c2dd8/attachment.html>

Reply by email

Mattias Gaertner
to Juha Manninen
Show quoted text 28 lines
I updated info about building and installing svn trunk version of FPC compiler, based on mails from Marc and Graeme earlier. Here: http://wiki.lazarus.freepascal.org/Getting_Lazarus#svn_trunk_version_of_fpc It is part of a long messy page, Getting_Lazarus, which could be cleaned a lot. This is a typical problem with wiki pages. The contents may be good and accurate but nobody takes care of the overall structure. I could try to clean it in future but now let's check this FPC installation part. There was a text (not by me): There are many ways to compile and install FPC. You can use plain make (see below), but it is recommended to build a fpc package for your distribution (.deb or .rpm file). A fpc package allows to easily uninstall, upgrade and downgrade it and a package makes sure that all files are installed at the common places. So if something goes wrong, other users know how to help you. The text "You can use plain make (see below)" was a ToDo item I guess. I added info for "make all" and "make install" under section "Building and installing the svn version of fpc". Then it says "it is recommended to build a fpc package for your distribution (.deb or .rpm file)". Why would it be recommended? I tried to build such RPM package when installing FPC trunk for the first time, but I failed.

... then the rpm should be fixed.

Still I was able to install it using "make all" and "make install" and it has been very easy to update since then.

For example because "make install"
-does not update your fpc.cfg,
-does not update the symlink under Linux (is this still the case?), -no uninstall
-installs under Linux under /usr/local/lib, while the packages install under /usr/lib

Everyone of them easily leads to 'strange' compilation errors and the mailing list, forums and chats are full of questions from people which use "make install".

So, I would say making a distro package is the more difficult way and the recommendation should be changed.

For those wanting to use make install, the wiki should point to Marcos howto.

Someone please check that the facts are correct in my wiki changes.

Mattias

Reply by email

Chris Kirkpatrick
to Mattias Gaertner
Mattias Gaertner wrote 7 lines
For example because "make install" -does not update your fpc.cfg, -does not update the symlink under Linux (is this still the case?), -no uninstall -installs under Linux under /usr/local/lib, while the packages install under /usr/lib

In my experience, packages install under /usr/lib; svn compilation with "make install" installs under /usr/lib, and only software downloaded as .tarballs to compile and "make install" gets installed in /usr/local/lib. Check, and beware!!
Chris

Reply by email

Mattias Gaertner
to Chris Kirkpatrick
Show quoted text 14 lines
Mattias Gaertner wrote: > For example because "make install" > -does not update your fpc.cfg, > -does not update the symlink under Linux (is this still the case?), > -no uninstall > -installs under Linux under /usr/local/lib, while the > packages install under /usr/lib > In my experience, packages install under /usr/lib; svn compilation with "make install" installs under /usr/lib, and only software downloaded as .tarballs to compile and "make install" gets installed in /usr/local/lib. Check, and beware!!

Checked:
make install

/usr/local/lib/fpc/2.5.1

Mattias

Reply by email

Juha Manninen
to Mattias Gaertner: On Sun, 27 Jun 2010 20:34:26 +0300 ... then the rpm should be fixed. For example because…
Mattias G?rtner wrote 6 lines
> Then it says "it is recommended to build a fpc package for your > distribution (.deb or .rpm file)". > Why would it be recommended? I tried to build such RPM package when > installing FPC trunk for the first time, but I failed. ... then the rpm should be fixed.

There is no ready-made rpm for trunk version available. Now we are talking about building the rpm package, not using an existing one.

For example because "make install" ... -installs under Linux under /usr/local/lib, while the packages install under

/usr/lib

Following the new wiki instructions it goes to your home directory : make install INSTALL_PREFIX=~

Everyone of them easily leads to 'strange' compilation errors and the mailing list, forums and chats are full of questions from people which use "make install".

Maybe because it is not documented in a brief way, in a place easy to find.

For those wanting to use make install, the wiki should point to Marcos howto.

Sorry, where is it? I have seen it but don't find it now.

Mattias, based on your comments someone could think installing the svn version of FPC is difficult. No, it is very easy. The section I added to wiki is rather short.:
http://wiki.lazarus.freepascal.org/Getting_Lazarus#Building_and_installing_the_svn_version_of_fpc

When I first installed the trunk FPC myself, I copied fpc.cfg from /etc and edited it using a trial-and-error method, because at that moment I didn't have time and patience to read the big FPC developers' manual.

Now I copied a short (4 lines) version from Marc Weustink's mail. It is really so easy there is no reason to keep it as a secret, or to give the impression that it is a difficult task.

Regards,
Juha

Reply by email

Paul Ishenin
to Marco van de Voort: Depends on the distribution and package conventions of that package system.

28.06.2010 2:32, Marco van de Voort ?????:

Show quoted text 5 lines
On Sun, Jun 27, 2010 at 07:40:11PM +0200, Mattias Gaertner wrote: > -installs under Linux under /usr/local/lib, while the > packages install under /usr/lib Depends on the distribution and package conventions of that package system.

Can be fixed at least for ubuntu? I think the majority use it now.

Best regards,
Paul Ishenin.

Reply by email

waldo kitty
to Juha Manninen: There is no ready-made rpm for trunk version available. Now we are talking about building…
Juha Manninen wrote 11 lines
Mattias G?rtner wrote : >> Then it says "it is recommended to build a fpc package for your >> distribution (.deb or .rpm file)". >> Why would it be recommended? I tried to build such RPM package when >> installing FPC trunk for the first time, but I failed. > > ... then the rpm should be fixed. There is no ready-made rpm for trunk version available. Now we are talking about building the rpm package, not using an existing one.

that's my understanding from your post, as well...

FWIW: i'm glad that someone who knows more details than many "newbies" (and there are different categories of "newbie") is working thru this to make things easier for them... i'm not a "newbie" in the strict sense but i am to the FPC/LAZ stuff (even though i've been reading and lightly participating for a year or more) and many things are not as easy as they appear to be... not only in the *nix side of an install but also with other OS'...

as you say, the wiki is "OK" for some stuff but it leaves a lot to be desired... i can't count the hours i've spent wading thru the wiki(s) trying to absorb the information and then to apply it in a reasonable and logical fashion only to fail and fail and fail... after that, i feel it best to keep reading and trying to learn more in case i missed some subtle point rather than to vent my frustrations on the list(s)... deity knows that i (and others similar to me) cannot update the wiki stuff when we are unable to make things work... i have, however, found some places where instructions were apparently for older versions and haven't been updated for the newer releases... all i can do is try to persevere and hope that a solution comes to light sooner rather than later...

i, for one, greatly appreciate your efforts and your posts in this aspect... thank you very much... not only from myself but others who find themselves in my situation and who don't post in these lists or even carry them...

Reply by email

Mark Morgan Lloyd
to Mattias Gaertner: On Sun, 27 Jun 2010 20:34:26 +0300 ... then the rpm should be fixed. For example because…
Mattias Gaertner wrote 5 lines
> There are many ways to compile and install FPC. You can use plain make (see > below), but it is recommended to build a fpc package for your distribution > (.deb or .rpm file). A fpc package allows to easily uninstall, upgrade and > downgrade it and a package makes sure that all files are installed at the > common places. So if something goes wrong, other users know how to help you.

If something goes wrong with installation from a .deb or .rpm, then users of Debian/Ubuntu or Red Hat might know how to help you, but it does not necessarily make things easier for FPC or Lazarus developers.

If the distro were guaranteed to be stable for a few years that would justify the project developers familiarising themselves with it, or if the project was stable that would make things easy for the distro managers. Unfortunately neither of those is the case.

My solution is to let the distro (in my case Debian) manage libraries, middleware and "capital apps" like Mozilla and Open Office, recognising that they're going to be a long way behind the "bleeding edge". In general I've found compiling and installing FPC and Lazarus on top of those to be not too difficult, with the possible exception of things like FPC's relationship with libgdb, Lazarus's relationship with libc, and the ABI to EABI transition on ARM.

With the major caveat that if you want to build a particular version of Lazarus you need to know its preferred version of FPC, and if you need to build a particular version of FPC you might, in my experience, need a pre-existing binary from one release older (don't expect to build 2.4.0 using the 2.0.0 compiler).

Mark Morgan Lloyd markMLl .AT. telemetry.co .DOT. uk [Opinions above are the author's, not those of his employers or colleagues]

Reply by email

Graeme Geldenhuys
to Juha Manninen: I reordered the Getting_Lazarus page. I moved some platform specific parts to their own…
Juha Manninen wrote
BTW, is it possible to rename a wiki page (file)? I used CamelCase names when I could have used spaces which are translated to underscores apparently.

There is a option "Move" on the right menu, which asks for a new name
- not sure if the general public has access to complete the move though.

Regards, - Graeme - _______________________________________________ fpGUI - a cross-platform Free Pascal GUI toolkit http://opensoft.homeip.net/fpgui/

Reply by email

Juha Manninen
to Juha Manninen: I updated info about building and installing svn trunk version of FPC compiler, based on…

I reordered the Getting_Lazarus page. I moved some platform specific parts to their own pages.
For example there is a long story about installing the Lazarus release version for Ubuntu. Is it really so complicated?
See: http://wiki.lazarus.freepascal.org/LazarusReleaseUbuntu

And I found the buildfaq, too. Now there are at least 2 wiki pages and one buildfaq talking about the same thing:

http://wiki.lazarus.freepascal.org/Getting_Lazarus http://wiki.lazarus.freepascal.org/Installing_Lazarus http://www.stack.nl/~marcov/buildfaq.pdf

They are ordered from "brief" to "detailed".
Installing_Lazarus page has the same problem that Getting_Lazarus page had: there is lots of platform and version specific info, most of which is not needed by one single reader. It should be divided into sub-pages, which I actually did for Getting_Lazarus page.

Page
http://wiki.lazarus.freepascal.org/Getting_Lazarus#Build_and_install_with_make

tells how to install FPC SVN version. It is short and easy. Only the symlink for fpc generation must be checked, and maybe some windows specific stuff.

Feedback is welcome.

BTW, is it possible to rename a wiki page (file)? I used CamelCase names when I could have used spaces which are translated to underscores apparently.

Juha

Reply by email

Hans-Peter Diettrich
to Juha Manninen: I updated info about building and installing svn trunk version of FPC compiler, based on…
Show quoted text 5 lines
Then it says "it is recommended to build a fpc package for your distribution (.deb or .rpm file)". Why would it be recommended? I tried to build such RPM package when installing FPC trunk for the first time, but I failed.

This is why somebody, who really *succeeded* in building a package for his system, should share it with the community. The above could be rephrased like "if you succeed in building ..., upload it to ... for use by others".

DoDi

Reply by email

Juha Manninen
to Hans-Peter Diettrich: This is why somebody, who really *succeeded* in building a package for his system, should…
This is why somebody, who really succeeded in building a package for his system, should share it with the community. The above could be rephrased like "if you succeed in building ..., upload it to ... for use by others".

Yes. Debian / Ubuntu .dep package creation is documented in Getting_Lazarus page. I added a .rpm ToDo item under:
http://wiki.lazarus.freepascal.org/Getting_Lazarus#Build_a_RPM_package

So if someone makes a .rpm package for Fedora / Suse / Mandriva, please share the knowledge.
I will not study that now. The svn version installs well enough.

Juha

Reply by email