On 22/02/2023 10:00, Bo Berglund via lazarus wrote:
Now I am having problems installing Lazarus 2.2.4 on Linux systems where older
Lazarus version exist because they use an older FPC which the new Lazarus cannot
use (3.0.4 vs 3.2.2).
You can install several fpc on Linux.

** But you need to remove the global /etc/fpc.cfg and have it local to the install. **
You can look at the output of
    fpc -va  empty_project.pas | grep fpc.cfg
to find the locations were fpc looks for it.

There may also be a way (I don't know) to have the IDE pass a param to fpc telling fpc which fpc.cfg to use....


And you either need to start the IDE via a script, setting a suitable %PATH env, so the correct fpc can be found. And fpc can find the correct ppc.
Or if you don't cross compile, you can invoke ppc directly .

I use the below. It allows several builds, even of the same version (debug / opt)

#!/bin/sh

mkdir -p /home/m/fpc/$INSTSRC
mkdir -p /home/m/fpc/$INSTSRC/source
cd /home/m/fpc/$INSTSRC/source

git -C  /home/m/fpc/svn/source --work-tree=/home/m/fpc/$INSTSRC/source restore .

### have a full working fpc in path to start the build

mkdir -p /home/m/fpc/$INSTPATH/
mkdir -p /home/m/fpc/$INSTPATH/def

cd /home/m/fpc/$INSTSRC/source

make clean
make all  OPT="-g- -gl -O-2  "
make install INSTALL_PREFIX=/home/m/fpc/$INSTPATH/def

mkdir -p /home/m/fpc/$INSTPATH/def/lib/fpc/etc
mkdir -p /home/m/fpc/$INSTPATH/def/etc

cd /home/m/fpc/$INSTPATH
def/bin/fpcmkcfg -d basepath=/home/m/fpc/$INSTPATH/def/lib/fpc/$INSTVERS > def/lib/fpc/etc/fpc.cfg def/bin/fpcmkcfg -d basepath=/home/m/fpc/$INSTPATH/def/lib/fpc/$INSTVERS > def/etc/fpc.cfg

ln -s /home/m/fpc/$INSTPATH/def/lib/fpc/$INSTVERS/ppcx64 /home/m/fpc/$INSTPATH/def/bin/ppcx64

## use in the IDE /home/m/fpc/$INSTPATH/def/lib/fpc/$INSTVERS/ppcx64


And another question:

How can I force Lazarus to show the initial configuration page, which is shown
on the very first start after installing Lazarus and later is skipped?
lazarus --setup

In the git main version of lazarus you can also force certain checks to be skipped (including fppkg)
lazarus --help

--skip-checks=LazarusDir,FpcExe,FpcSrc,Make,Debbugger,Fppkg,Setup,MissingPackageFile,InstallDir,SingleInstance,All
                      Skip selected checks at startup.

You can put those into the
  lazarus.cfg
file (in the same directory as your lazarus exe // or your startlazarus exe, in case you use that and your lazarus is it the primary conf path)


--
_______________________________________________
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus

Reply via email to