Difference between revisions of "Multiple Lazarus"

From Free Pascal wiki
Jump to navigationJump to search
(→‎The config directory: hidden dir *nix, added Vista+ location)
m (→‎Example 1: SVN and Release: Windows has \ not /, also use drive to prevent ambiguity)
Line 90: Line 90:
  
 
For SVN store the settings in the folder 'C:\lazsvncfg\':
 
For SVN store the settings in the folder 'C:\lazsvncfg\':
<pre>C:\FPC\laz\startlazarus.exe --primary-config-path=/lazsvncfg</pre>
+
<pre>C:\FPC\laz\startlazarus.exe --primary-config-path=C:\lazsvncfg</pre>
  
 
[[Category:Lazarus]]
 
[[Category:Lazarus]]

Revision as of 17:16, 22 November 2011

Deutsch (de) English (en) español (es) français (fr) polski (pl) português (pt) русский (ru)

Who needs multiple lazarus and who does not?

You need multiple lazarus versions ...

  • to have several versions of lazarus
  • to have one lazarus compiled with several different versions of FPC

You don't need multiple versions ...

  • to test your project with different widgetsets
  • to cross compile

The Lazarus directory

The lazarus directory is overridable using --lazarusdir, this is useful when running lazarus from e.g. USB sticks with varying mountpoints or driveletters.

The config directory

All IDE options are saved to its config directory. Under Linux, Mac OS X and BSD the default config directory is ~/.lazarus. Note the beginning dot, which makes it a hidden directory.

This doesn't apply to Windows, because settings are saved to the User AppData folder, which maps to a different directory depending on the Windows version and language. See also information here: Multiple Lazarus#Windows. Note that you won't see the configuration directory in Windows unless you select to see hidden and system files.

Operating System Default location for the config directory
Linux, Mac OS X, BSD, other UNIXes ~/.lazarus
Windows XP C:\Documents and Settings\<User name>\Local Settings\Application Data\lazarus
Windows Vista C:\Users\<User name>\AppData\Local\lazarus\

The config directory can not be shared between different Lazarus versions. A newer Lazarus can read older configs and will update them automatically. There is no guarantee that an older version can read config files of a newer version. It is always a good idea to make a backup of your configs from time to time for the case you changed something weird and don't know what it was.

The config directory can be given at command line with the --primary-config-path parameter. For example

 lazarus --primary-config-path=~/.lazarus2

will start an IDE using ~/.lazarus2 as config directory. This way you can have an arbitrary number of config directories and start several independent Lazarus instances. If you use this often, then a small bash script can be created:

 #!/bin/sh
 /path/to/lazarus --primary-config-path=~/.lazarus2

The lazarus files

The normal Lazarus (sources and resources) is only one directory. Just copy this directory and get a whole new lazarus. The normal lazarus can be downloaded as zip or from svn. When you compile this lazarus all files will be created in sub directories of this directory.

You don't need to 'install lazarus. But if you install lazarus you get some nice shortcuts on your desktop and some files are associated. These things are platform dependent and there is always only one lazarus installed. The official installers do not support to install lazarus multiple times. But you can add another lazarus manually quite easily.

Linux

Example 1 : A normal installed lazarus plus the svn version

Download and install the lazarus packages as normal.

Then download the lazarus svn to a directory of your choice, preferably somewhere in your home directory. See here Installing_Lazarus#Downloading_Lazarus_SVN.

Example 2 : A normal installed lazarus plus a copy in the home directory

Download and install the lazarus packages as normal.

Then copy lazarus to your home directory and change the ownership of the files:

cp -a /usr/lib/lazarus $(HOME)/
chown $USER:$USER -R $(HOME)/lazarus

(Note: The chown line assumes that your group has the same name as your username. If not, replace $USER:$USER with your username:groupname)

Then change your lazarus desktop/menu shortcut to start

 /home/username/lazarus/startlazarus --pcp=~/.lazaruslocal

Then start the IDE and change the environment options: Menu / Environment / Environment options ... / Lazarus directory to

 /home/username/lazarus

Now you have a local copy, that you can edit and recompile. Don't forget to close source files of /usr/lib/lazarus.

Windows

Example 1: SVN and Release

This is to have both SVN and last Release version of Lazarus.

1) Install Lazarus last Release and check setup option 'create desktop shortcut', you will get 'Lazarus.lnk' in desktop.

2) Get Lazarus from SVN and compile, then create a shortcut in desktop for 'lazarus.exe' and rename it to 'Lazarus SVN.lnk'.

Then you can set the config dir for each version editing the shortcut path to executable:

This is for Release, if you don't change nothing the config will be saved in the user app data folder (in Win7 C:\Users\$username$\AppData\Local\Lazarus):

C:\lazarus\startlazarus.exe

For SVN store the settings in the folder 'C:\lazsvncfg\':

C:\FPC\laz\startlazarus.exe --primary-config-path=C:\lazsvncfg