DualLaz: what changed
Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.
Title: DualLaz
| Old | New | Line | |
|---|---|---|---|
| 1 | + | ## long story short | |
| 2 | + | ||
| 3 | + | fpcUP*deluxe* = [[fpcupdeluxe]] is the newest alternative among GUI installers and pretty convenient, fpcGUI is older and less powerful. | |
| 4 | + | ||
| 5 | + | setup fpcGUI like in pic below (possibly make your alterations) and hit run button. Should all work like a charm. | |
| 6 | + | ||
| 7 | + | ## Two simultaneous Lazarus copies operational in Linux 64 bit | |
| 8 | + | ||
| 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. | |
| 12 | + | ||
| 13 | + | Here is a run-through to achieve that. Let's assume: | |
| 14 | + | ||
| 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. | |
| 20 | + | ||
| 21 | + | By default, Lazarus uses *~/development/config_lazarus/* as the **primary-config-path**\ | |
| 22 | + | We will override that in the second script: | |
| 23 | + | ||
| 24 | + | In ~ create two shell scripts : runL1.sh and runL2.sh containing | |
| 25 | + | ||
| 26 | + | `#!/bin/sh`\ | |
| 27 | + | `/home/you/development/lazarus/startlazarus --primary-config-path=/home/you/development/config_lazarus` | |
| 28 | + | ||
| 29 | + | and | |
| 30 | + | ||
| 31 | + | `#!/bin/sh`\ | |
| 32 | + | `/workDIR/LazCC/laz/startlazarus --primary-config-path=/workDIR/LazCC/pcp4fup` | |
| 33 | + | ||
| 34 | + | 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. | |
| 35 | + | ||
| 36 | + | 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 | |
| 37 | + | ||
| 38 | + | `/home/you/development/fpc/bin/x86_64-linux/`**`fpc.sh`** | |
| 39 | + | ||
| 40 | + | as the **compiler**. Do not choose | |
| 41 | + | ||
| 42 | + | `/home/you/development/fpc/bin/x86_64-linux/fpc` | |
| 43 | + | ||
| 44 | + | because it will give you run time errors aplenty (system.ppu not found etc.). | |
| 45 | + | ||
| 46 | + | fpc.sh contains | |
| 47 | + | ||
| 48 | + | `#!/bin/sh`\ | |
| 49 | + | `# This script starts the fpc compiler installed by fpcup`\ | |
| 50 | + | `# and ignores any system-wide fpc.cfg files`\ | |
| 51 | + | `# Note: maintained by fpcup; do not edit directly, your edits will be lost.`\ | |
| 52 | + | `/home/you/development/fpc/bin/x86_64-linux/fpc -n @/home/you/development/fpc/bin/x86_64-linux/fpc.cfg "$@"` | |
| 53 | + | ||
| 54 | + | 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 | |
| 55 | + | ||
| 56 | + | <figure> | |
| 57 | + | <img src="fpcGUI_LazCC.png" title="fpcGUI_LazCC.png" /> | |
| 58 | + | <figcaption>fpcGUI_LazCC.png</figcaption> | |
| 59 | + | </figure> | |
| 60 | + | ||
| 61 | + | upon running abovementioned **runL2.sh** we should complete the path setup\ | |
| 62 | + | in the popup window  | |
| 63 | + | ||
| 64 | + | \ | |
| 65 | + | according to this pic:  | |
| 66 | + | ||
| 67 | + | ... 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. | |
| 68 | + | ||
| 69 | + | The option **lazlinkname=lazarus_fpctrunk** actually produced a link on the desktop named | |
| 70 | + | ||
| 71 | + | `/home/you/Desktop/fpcup-lazarus_fpctrunk.desktop (i.e. not in /workDIR because the option was used twice, the latter being effective) executing` | |
| 72 | + | ||
| 73 | + | `/workDIR/LazCC/laz/lazarus --pcp="/workDIR/LazCC/pcp4fup"` | |
| 74 | + | ||
| 75 | + | which is OK. We don't necessarily need our above runL2.sh and can use the desktop link instead. | |
| 76 | + | ||
| 77 | + | ------------------------------------------------------------------------ | |
| 78 | + | ||
| 79 | + | for copying, here is the settingsCC.ini: | |
| 80 | + | ||
| 81 | + | `; settings for fpcup CC ver`\ | |
| 82 | + | `; use e.g. fpcup --inifile=settingsCC.ini --inisection=generalCC`\ | |
| 83 | + | `; to compile with the options specified in that section [generalCC]`\ | |
| 84 | + | `[generalCC]`\ | |
| 85 | + | `installdir=/workDIR/LazCC`\ | |
| 86 | + | `primary-config-path=/workDIR/LazCC/pcp4fup`\ | |
| 87 | + | `fpcdir=/workDIR/LazCC/fpc`\ | |
| 88 | + | `lazdir=/workDIR/LazCC/laz`\ | |
| 89 | + | `lazlinkname=run-lazCC`\ | |
| 90 | + | `;lazlinkname=lazarus_fpctrunk - just the name of the Desktop link`\ | |
| 91 | + | `;lazlinkname=/workDIR/LazCC/lazrunner.sh `\ | |
| 92 | + | `lclplatform=gtk2`\ | |
| 93 | + | `; Full FPC+Lazarus download & compile`\ | |
| 94 | + | `; Here use FPC trunk instead of the version tagged "default fixes"`\ | |
| 95 | + | `fpcurl=http://svn.freepascal.org/svn/fpc/trunk `\ | |
| 96 | + | `; Compiles with debug options:`\ | |
| 97 | + | `fpcopt="-g -gl -O1"`\ | |
| 98 | + | `lazopt="-g -gl -O1"`\ | |
| 99 | + | `; Use our own names to avoid the default values`\ | |
| 100 | + | `fpcuplinkname=fpcuptrunkdebug`\ | |
| 101 | + | `; Keeps changes you made to the svn checkout:`\ | |
| 102 | + | `keeplocalchanges=true`\ | |
| 103 | + | `; You can enable/disable modules specified in fpcup.ini:`\ | |
| 104 | + | `anchordocking=0` | |
| 105 | + | ||
| 106 | + | --- | |
| 107 | + | *From the Free Pascal wiki, page "DualLaz", as it stood on 2017-10-17 after a change by Mai, out of the wiki's dump of 2024-05-26. 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).* | |
| 108 | + | Category: Install | |
| 109 | + | Category: Lazarus |
