Greg As John said it can be done on Linux but to do it you have to build from source as the install location needs to be specified when you invoke cmake to configure the build. If I am running locally from my user directory I am able to run as many versions as I like but you need a few basic OS skills in setting up to be able to launch the different version.
My method of doing this is to install each version to its own subdirectory of my home directory usually under $HOME/.local/bin. I am currently on Linux Mint 19.3 which is based on Ubuntu 18.04 I.e. $HOME/.local/bin/gnucash-3.6 $HOME/.local/bin/gnucash-3.7 $HOME/.local/bin/gnucash-3.8 Each of these locations will have its own /bin /include /share /lib directories created by the install process. This is the location which needs to be supplied in the -D CMAKE_INSTALL_PREFIX switch to cmake when building. AFAI can tell GnuCash sets its internal pointers to look for its resources in the appropriate subdirectories. The arrangement of subdirectories is different for an install to usr/local but for installation in /opt it will normally have a /opt/gnucash directroy which contains the above subdirectories. I have not tried installing multiple versions to /opt and I don't know if make install can handle it but if you specified /opt/gnucash-3.8 to cmake in the build it should install with all the subdirectories under that and it is only necessary to create the launcher pointing to the executable file. The /bin directory in each case contains the main executable .../bin/gnucash I then create a menu launcher for each tagged with the version numbers and pointing to the appropriate executable. If you install under /opt/gnucash-<ver> you just point to that location instead in the launcher. If you are a terminal addict then an alternative is to create an alias which points to each version. You can usually find descriptions appropriate to particular distros for creating alias and launcher items in the forums for each distro. This is not something I do as a matter of course but I did do it for the first couple of V3 releases where there were initially a few bugs but I have reverted to just installing only the release version in usr/local after v3.3. I retain the source and build directories for the last couple of version so I can in principle reinstall. You have to exercise caution where a release includes changes in the file locations and/or the data file structure which are not backward compatible (fairly rare but occurs occasionally) although this is usually only to the users configuration files as discussed in the wiki https://wiki.gnucash.org/wiki/Configuration_Locations. If you are working across major release boundaries an approach to deal with the changing user file locations and structure might be to create a separate user. If you maintain the data files in a dropbox for example it can be made accessible to each user fairly easily. My personal accounts can be edited from either my desktop and/or laptop (both Linux Mint boxes) or my wife's Windows 10 laptop which are synchronized whenever internet access is available usually within a minute or two of logging in. Again caution is needed to ensure syncing has occurred. David Cousens ----- David Cousens -- Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-User-f1415819.html _______________________________________________ gnucash-user mailing list gnucash-user@gnucash.org To update your subscription preferences or to unsubscribe: https://lists.gnucash.org/mailman/listinfo/gnucash-user If you are using Nabble or Gmane, please see https://wiki.gnucash.org/wiki/Mailing_Lists for more information. ----- Please remember to CC this list on all your replies. You can do this by using Reply-To-List or Reply-All.