DualLaz: what changed
Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.
| Old | New | Line | |
|---|---|---|---|
| 1 | 1 | ## long story short | |
| 2 | 2 | ||
| 3 | - | ||
| 3 | + | fpcUP _deluxe_ = [[fpcupdeluxe]] is the newest alternative among GUI installers and pretty convenient, fpcGUI is older and less powerful. | |
| 4 | 4 | ||
| 5 | - | ||
| 5 | + | setup fpcGUI like in pic below (possibly make your alterations) and hit run button. Should all work like a charm. | |
| 6 | 6 | ||
| 7 | 7 | ## Two simultaneous Lazarus copies operational in Linux 64 bit | |
| 8 | 8 | ||
| 9 | - | ||
| 10 | - | ||
| 11 | - | ||
| 12 | - | ||
| 13 | - | ||
| 14 | - | ||
| 15 | - | ||
| 16 | - | ||
| 17 | - | ||
| 18 | - | ||
| 19 | - | ||
| 20 | - | ||
| 21 | - | ||
| 22 | - | ||
| 23 | - | ||
| 24 | - | ||
| 25 | - | ||
| 26 | - | ||
| 27 | - | ||
| 28 | - | ||
| 29 | - | ||
| 30 | - | ||
| 31 | - | ||
| 32 | - | ||
| 9 | + | Typically, you have a primary install via fpcUP in ~/development. | |
| 10 | + | But you also want a secondary test version in /workdir/LazCC or somewhere independently, possibly for release testing of Lazarus ver. 1.4 | |
| 11 | + | Windows users, see [[Multiple Lazarus]] install info. | |
| 33 | 12 | ||
| 34 | - | ||
| 13 | + | Here is a run-through to achieve that. Let's assume: | |
| 35 | 14 | ||
| 36 | - | ||
| 15 | + | * We use the Linux distro: mint 17.1 KDE 64 bit of 2015 (Kubuntu should work too, I guess) | |
| 16 | + | * **primary** Lazarus resides in **/home/you/development** installed via fpcUP | |
| 17 | + | * **secondary** Lazarus will reside at **/workDIR/LazCC** | |
| 18 | + | * no other Lazarus installed via a debian-package installer or whatever, which could interfere somehow (e.g. /usr/local/lib/fpc - so we delete it ) | |
| 19 | + | * /home/you below refers to your ~ aka home-directory aka $HOME aka /home/michael or whatever name you chose. | |
| 37 | 20 | ||
| 38 | - | ||
| 21 | + | ||
| 22 | + | By default, Lazarus uses _~/development/config_lazarus/_ as the **primary-config-path** | |
| 23 | + | We will override that in the second script: | |
| 39 | 24 | ||
| 40 | - | ||
| 25 | + | In ~ create two shell scripts : runL1.sh and runL2.sh containing | |
| 26 | + | ``` | |
| 27 | + | #!/bin/sh | |
| 28 | + | /home/you/development/lazarus/startlazarus --primary-config-path=/home/you/development/config_lazarus | |
| 29 | + | ``` | |
| 41 | 30 | ||
| 42 | - | ||
| 31 | + | and | |
| 32 | + | ``` | |
| 33 | + | #!/bin/sh | |
| 34 | + | /workDIR/LazCC/laz/startlazarus --primary-config-path=/workDIR/LazCC/pcp4fup | |
| 35 | + | ``` | |
| 43 | 36 | ||
| 44 | - | ||
| 37 | + | respectively. Use an explorer like dolphin etc. or type sth. like sudo mkdir /workDIR/LazB and chown to make it accessible to you as a non-root user. | |
| 45 | 38 | ||
| 46 | - | ||
| 39 | + | Upon executing **runL1.sh** the "Configure Lazarus IDE" screen (pic below) pops up in case that your pcp-dir is new or emptied (i.e. for alternative settings set). In such case we choose | |
| 40 | + | ``` | |
| 41 | + | /home/you/development/fpc/bin/x86_64-linux/**fpc.sh** | |
| 42 | + | ``` | |
| 47 | 43 | ||
| 48 | - | ||
| 49 | - | ||
| 50 | - | ||
| 51 | - | ||
| 52 | - | ||
| 44 | + | as the **compiler**. Do not choose | |
| 45 | + | ``` | |
| 46 | + | /home/you/development/fpc/bin/x86_64-linux/fpc | |
| 47 | + | ``` | |
| 53 | 48 | ||
| 54 | - | ||
| 49 | + | because it will give you run time errors aplenty (system.ppu not found etc.). | |
| 55 | 50 | ||
| 56 | - | ||
| 57 | - | ||
| 58 | - | ||
| 59 | - | ||
| 51 | + | ||
| 60 | 52 | ||
| 61 | - | ||
| 62 | - | ||
| 53 | + | ||
| 54 | + | fpc.sh contains | |
| 55 | + | ``` | |
| 56 | + | #!/bin/sh | |
| 57 | + | # This script starts the fpc compiler installed by fpcup | |
| 58 | + | # and ignores any system-wide fpc.cfg files | |
| 59 | + | # Note: maintained by fpcup; do not edit directly, your edits will be lost. | |
| 60 | + | /home/you/development/fpc/bin/x86_64-linux/fpc -n @/home/you/development/fpc/bin/x86_64-linux/fpc.cfg "$@" | |
| 61 | + | ``` | |
| 63 | 62 | ||
| 64 | - | ||
| 65 | - | ||
| 63 | + | and will obviously be path-adapted for the secondary Lazarus. This is done automatically by fpcUP. We'll run it via fpcupGUI, which is contained in the source zip-archive of fpcUP. Compile and run it with a prior Lazarus install you made. The settings below will keep fpcUP from using undesired fallback-paths and instruct it to put it where we want, i.e. the subdirectory **/workDIR/LazCC** which takes 7 minutes roundabout | |
| 66 | 64 | ||
| 67 | - | ||
| 65 | + | [](</File:fpcGUI_LazCC.png>) | |
| 68 | 66 | ||
| 69 | - | ||
| 67 | + | upon running abovementioned **runL2.sh** we should complete the path setup | |
| 68 | + | in the popup window [](</File:LazCFG.png>) | |
| 70 | 69 | ||
| 71 | - | ||
| 70 | + | ||
| 71 | + | ||
| 72 | + | according to this pic: [](</File:LazPaths.png>) | |
| 72 | 73 | ||
| 73 | - | ||
| 74 | + | ||
| 75 | + | ... and we're done. We have 2 independent Lazarusses on disk ! Now you can repeat the routine n times with new paths, if you so desire. | |
| 74 | 76 | ||
| 75 | - | ||
| 77 | + | The option **lazlinkname=lazarus_fpctrunk** actually produced a link on the desktop named | |
| 78 | + | ``` | |
| 79 | + | /home/you/Desktop/fpcup-lazarus_fpctrunk.desktop (i.e. not in /workDIR because the option was used twice, the latter being effective) executing | |
| 80 | + | ``` | |
| 81 | + | ``` | |
| 82 | + | /workDIR/LazCC/laz/lazarus --pcp="/workDIR/LazCC/pcp4fup" | |
| 83 | + | ``` | |
| 76 | 84 | ||
| 77 | - | ||
| 85 | + | which is OK. We don't necessarily need our above runL2.sh and can use the desktop link instead. | |
| 78 | 86 | ||
| 79 | - | ||
| 87 | + | * * * | |
| 80 | 88 | ||
| 81 | - | ||
| 82 | - | ||
| 83 | - | ||
| 84 | - | ||
| 85 | - | ||
| 86 | - | ||
| 87 | - | ||
| 88 | - | ||
| 89 | - | ||
| 90 | - | ||
| 91 | - | ||
| 92 | - | ||
| 93 | - | ||
| 94 | - | ||
| 95 | - | ||
| 96 | - | ||
| 97 | - | ||
| 98 | - | ||
| 99 | - | ||
| 100 | - | ||
| 101 | - | ||
| 102 | - | ||
| 103 | - | ||
| 104 | - | ||
| 89 | + | for copying, here is the settingsCC.ini: | |
| 90 | + | ``` | |
| 91 | + | ; settings for fpcup CC ver | |
| 92 | + | ; use e.g. fpcup --inifile=settingsCC.ini --inisection=generalCC | |
| 93 | + | ; to compile with the options specified in that section [generalCC] | |
| 94 | + | [generalCC] | |
| 95 | + | installdir=/workDIR/LazCC | |
| 96 | + | primary-config-path=/workDIR/LazCC/pcp4fup | |
| 97 | + | fpcdir=/workDIR/LazCC/fpc | |
| 98 | + | lazdir=/workDIR/LazCC/laz | |
| 99 | + | lazlinkname=run-lazCC | |
| 100 | + | ;lazlinkname=lazarus_fpctrunk - just the name of the Desktop link | |
| 101 | + | ;lazlinkname=/workDIR/LazCC/lazrunner.sh | |
| 102 | + | lclplatform=gtk2 | |
| 103 | + | ; Full FPC+Lazarus download & compile | |
| 104 | + | ; Here use FPC trunk instead of the version tagged "default fixes" | |
| 105 | + | fpcurl=http://svn.freepascal.org/svn/fpc/trunk | |
| 106 | + | ; Compiles with debug options: | |
| 107 | + | fpcopt="-g -gl -O1" | |
| 108 | + | lazopt="-g -gl -O1" | |
| 109 | + | ; Use our own names to avoid the default values | |
| 110 | + | fpcuplinkname=fpcuptrunkdebug | |
| 111 | + | ; Keeps changes you made to the svn checkout: | |
| 112 | + | keeplocalchanges=true | |
| 113 | + | ; You can enable/disable modules specified in fpcup.ini: | |
| 114 | + | anchordocking=0 | |
| 115 | + | ``` | |
| 105 | 116 | ||
| 106 | 117 | --- | |
| 107 | - | ||
| 108 | - | ||
| 109 | - | ||
| 118 | + | *From the Free Pascal wiki, page "DualLaz", as the Internet Archive kept it on 2023-09-24. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).* |
