HowTo:Install multiple versions of POV-Ray

From POV-Wiki
Revision as of 16:44, 13 June 2026 by Jr (talk | contribs) (part 1 of 2 creating the page.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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.