HowTo:Install multiple versions of POV-Ray
the following shows how to install several POV-Ray versions (and or branches/forks) to allow easy concurrent use of.
the intended "audience" are Linux and FreeBSD users. assuming a Bourne-Again SHell and the usual GNU tools.
if this will be the first install of POV-Ray on the machine, I recommend first installing a packaged version, to ensure all required libraries are at hand; note that Debian etc users also need the *-dev bits, to get the headers.
the following then outlines one "solution" to this problem which works for me.
its advantage is that I can have separate 'povray.{conf,ini}' configuration files for every program.
other approaches exist, of course :-).
you will need to be the 'root' user to make a couple of preparations, thereafter everything is done as you(r user).
while not perhaps required, I use an "administrative" group to own the directory and installed programs; 'adm', 'wheel', 'staff', 'operator', every Linux distribution will provide one or more of these. add your user to one, in the examples below I use "admin" ('adm').
next create the directory which will contain all of the POV-Ray installations, so make sure there's sufficient (disk) space for "the future"; you could, of course, simply make it a mount-point. change the permissions and owner to yourself, with a suitable group:
# mkdir /home/povray # chown you:adm /home/povray # chmod g+w /home/povray
with the directory in place, we can install the first POV-Ray, I will use the 'beta.2' as the example. the following "official" place has the archives: <https://github.com/POV-Ray/povray/tags>.
create a directory for it, and a 'priv' ("private") directory within, ie
$ mkdir -p /home/povray/v3.8.0-beta.2/priv/ $ chown -R you:adm /home/povray/v3.8.0-beta.2
I use this 'priv'ate space to store the downloaded archive, and later the build script and log, and a simple "one-liner" script for "access".
building has been documented elsewhere, see installing POV-Ray, I show here only the key steps from my "usual" build-script.
in an ideal world you'd write a basic build script to automate part or all of the procedure. such a script can then be used, with little modification, for every subsequent installation of a POV-Ray.
also recommended is the use of the 'script(1)' program, as it provides a record of all the information which "scrolled by" etc. if you are not using a build script, record the session manually but don't forget to 'exit' from the sub-shell it starts.
and another "also recommended" :-). I usually will do a
$ ./configure --no-create --help > confighelp
beforehand, to see which options are available, and to have to hand as reference; sometimes the 'INSTALL' file documentation is incomplete.
I use the '/tmp' directory for "transient" stuff, the building, as it usually is mounted in RAM (tmpfs).
$ cd /tmp $ script build-log $ tar -xf /home/povray/v3.8.0-beta.2/priv/povunix-v3.8.0-beta.2-src.tar.gz $ chown -R you:adm povunix-v3.8.0-beta.2-src $ chmod -R u+w,go+r-w,a-s povunix-v3.8.0-beta.2-src $ cd povunix-v3.8.0-beta.2-src $ CXXFLAGS="-std=c++11 -march=native -mtune=native -ffast-math -O2 -fPIC" \ > ./configure \ > --prefix=/home/povray/v3.8.0-beta.2 \ > --sysconfdir=/home/povray/v3.8.0-beta.2/etc \ > --mandir=/home/povray/v3.8.0-beta.2/man \ > --without-libmkl \ > --without-libsdl \ > --with-x \ > COMPILED_BY="you@home" $ make -j8 $ make check $ make install $ exit $ mv /tmp/build-log /home/povray/v3.8.0-beta.2/priv/
the 'doc' directory (if wished) needs to be moved manually from 'share/doc', the '--docdir=...' configuration option doesn't work.