[fpc-pascal] Re: RE : FPCUp FPC/Lazarus installer/updater: first Linux/Windows version released

Ludo Brands ludo.brands at free.fr
Fri Feb 10 18:23:27 CET 2012


> > - option to not install/update fpc or lazarus (fe. setting the 
> > corresponding dir or url to '')
> Ok. Was thinking about allowing recompiles anyway with 
> different compiler options, so adding options e.g. 
> --fpcnoupdate or --laznoupdate could work as well. Makes 
> having a GUI more of a necessity/advantage...

Solving next point will help. Adding compiler options was my next suggestion
;)

> 
> > - in side by side, it is still juggling with command line 
> parameters. 
> > Would be nice if fpcup would leave the settings in a .conf 
> or .ini in 
> > the install dirs and when running fpcup from that dir it 
> would pick up 
> > these settings and re-use them. Running fpcup in that dir with new 
> > parameters would update the settings. Similar to svn: you 
> only specify 
> > the svn url once and do just an 'update' from then on.
> Yep, agreed. I had something this planned.
> Still thinking about where to put the ini though. I'd prefer 
> to put it with fpcup itself. Otherwise you'd have to specify 
> the directories each time again. Your thoughts?

When storing the settings in fpcdir and lazdir you simply run fpcup from
that dir. The same as when doing 'svn up' from a dir. svn simply looks for
.svn in the current dir and loads its settings. 
When you store it in the dir containing fpcup, you need a mechanism to
select one of the different settings. 

> 
> > - (I hesitated to put this in the category "bugs") lazarus is 
> > configured to use (default on ubuntu) ~/fpc/bin/fpc. I have 2.4.4 
> > installed with a /etc/fpc.cfg and ~/fpc/bin/fpc will just launch 
> > 2.4.4. Changing the compiler to ~/fpc/compiler/ppc386 and copying 
> > fpc.cfg to ~/fpc/compiler/ still fails because the compiler still 
> > picks up /etc/fpc.cfg. AFAIK the fpc.cfg in the compiler 
> dir will only 
> > be picked up when there is no .fpc.cfg in the home directory nor a 
> > fpc.cfg in the current directory nor one in the path specified by 
> > PPC_CONFIG_PATH nor a /etc/fpc.cfg. Detecting a conflicting fpc.cfg 
> > and warning the user would be nice.
> Agreed.
> If I understand the FPC User's Guide correctly, one could use 
> the -n option to tell fpc to ignore config files, then 
> specify the one we want with @. The question is, can that be 
> done with Lazarus - I suppose not... Would copying over the 
> newly installed FPC compiler's fpc.cfg to the installed 
> lazarus dir work?
> 

I tried the latter but it didn't work.

> > If "side by side" would be limited to different version 
> > numbers/architectures (as opposed to different revisions of the same
> > version/architecture) then a 'pkexec make install 
> > INSTALL_PREFIX="whatever found in /etc/fpc.cfg" ' would be 
> a solution.
> So that would basically be an upgrade of the existing 
> systemwide compiler, right? At first glance, I think I'd be 
> very hesitant to do that as it will conflict with the 
> distro's package manager. Of course, we're all developers, so 
> we can deal with any problems, right.... ;)

No, the system wide compiler isn't changed. /usr/bin/fpc still points to the
old compiler. You simply re-use the /etc/fpc.cfg which has entries like
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget. A 'make install
INSTALL_PREFIX=/usr/lib' will put the units in /usr/lib/fpc/2.6.1  (if 2.6.1
is the version made) and leave the system compiler alone (if that isn't
2.6.1 ...). I agree that some checks need to be made to make sure that
versions are different and /etc/fpc.cfg is indeed using $fpcversion macros
in the unit paths. 

Thanks, Ludo   




More information about the fpc-pascal mailing list