Diclamer : Official instructions to build POV-Ray can be found on the Github POV-Ray source repository (pay particular attention to the list of dependencies):
These two links apply to the 3.8 development version of POV-Ray they ship with... which, by the way, is not yet an official stable version. Rather go here or for this relative to current stable version. So be aware that the below recipes are in no way official instructions. They may even be outdated, and are just to here to be considered as rather particular cases feedback that might come in handy to some lucky users.
Binaries are compiled for every new version of POV-Ray and are available on the POV-Ray website.
Running the setup.exe installer with standard options is enough to set POV-Ray up and in working order, though we do recommend also downloading the editor DLL's when prompted by the installer, as without the editor you will need to use another program to edit .POV source files.
- Download the source from GitHub.
- On older Linux distributions you may have to query-replace march=native to march=corei7 in the configure file (tested with Ubuntu 12.04 LTS 64-bit, gcc 4.6.3, and i7-4770K processor).
- Navigate from a terminal into the folder where you uncompressed it and type:
./configure COMPILED_BY="your name <email@address>"
if you get an error, whatever will follow the "configure: error: " is the names of missing libraries on your system, it could be boost, libpng, or anything... Go to your package manager such as Synaptic or whatever, and install each of them preferably the specific version which is asked for. At the end of the configure command, this should be written:
Unix man page:/usr/local/share/man
- then type:
make make install
That's all, you should then have POV-Ray 3.7 installed.
[/content/User:Le_Forgeron/vault/Compilation Here] is a page with more options for compiling.
Below is the recipe used to compile POV-Ray for Slackware:
cd /media/space/software/Source/povray/povray-3.7.0/povray git config core.sparsecheckout true echo source/ >> .git/info/sparse-checkout echo unix/ >> .git/info/sparse-checkout echo vfe/ >> .git/info/sparse-checkout echo distribution/ >> .git/info/sparse-checkout echo doc/ >> .git/info/sparse-checkout git remote add -f origin https://github.com/POV-Ray/povray git pull origin master #From https://github.com/POV-Ray/povray # * [new branch] 3.7-stable -> origin/3.7-stable # * [new branch] master -> origin/master # * [new tag] v18.104.22.168 -> v22.214.171.124 #Backup /media/space/software/Source/povray/povray-3.7.0/povray to /media/space/software/Source/povray/povray-3.7.0/povray.tar.gz cd unix/ ../prebuild.sh cd ../ ../configure COMPILED_BY="your name" --with-boost-thread=boost_thread #=============================================================================== #POV-Ray 3.7.0 has been configured. #Built-in features: # I/O restrictions: enabled # X Window display: enabled (using SDL) # Supported image formats: gif tga iff ppm pgm hdr png jpeg tiff openexr # Unsupported image formats: - #Compilation settings: # Build architecture: x86_64-unknown-linux-gnu # Built/Optimized for: x86_64-unknown-linux-gnu (using -march=native) # Compiler vendor: gnu # Compiler version: g++ 4.7.1 # Compiler flags: -pipe -Wno-multichar -Wno-write-strings -fno-enforce-eh-specs -s -O3 -ffast-math -march=native -pthread #Type 'make check' to build the program and run a test render. #Type 'make install' to install POV-Ray on your system. #The POV-Ray components will be installed in the following directories: # Program (executable): /usr/local/bin # System configuration files: /usr/local/etc/povray/3.7 # User configuration files: /home/dad/.povray/3.7 # Standard include files: /usr/local/share/povray-3.7/include # Standard INI files: /usr/local/share/povray-3.7/ini # Standard demo scene files: /usr/local/share/povray-3.7/scenes # Documentation (text, HTML): /usr/local/share/doc/povray-3.7 # Unix man page: /usr/local/share/man #=============================================================================== make -j2 make check #the biscuit + coffee render fine #As root checkinstall # this does "make install" and also creates a Slackware package #Edit 3 - Version to be 3.7.0 #This package will be built according to these values: #1 - Summary: [ povray ] #2 - Name: [ povray ] #3 - Version: [ 3.7.0 ] #4 - Release: [ 1 ] #5 - License: [ GPL ] #6 - Group: [ Applications/System ] #7 - Architecture: [ x86_64 ] #8 - Source location: [ povray ] #9 - Alternate source location: [ ]
Below is what was tried and finally used (# is a comment sign) ...to compile some unofficial and official POV-Ray 3.8 for Termux on an armv7 achitecture, (32bits) of the Samsung Galaxy note 3 (both N900A and N9005, respectively with android 5 and 10): Android versions below 7 do not have X11 repo available and therefore no libxpm. Using --without-x is thus necessary for these versions ...But more recent terminals using android v 7 and above are welcome to remove and test for some way to have the X/sdl based preview working...!
#pkg install x11-repo #no more needed --without-x, theoretically the below libxpm neither
pkg upgrade pkg install -y libllvm clang autoconf automake boost imagemagick git pkg-config #libxpm #sdl git clone https://github.com/POV-Ray/povray.git
or to use HGPovray branch, replace the last line with:
git clone https://github.com/LeForgeron/povray.git
then, get into the directory
cd /data/data/com.termux/files/home/povray/unix/ bash prebuild.sh cd ../
#--disable-shared creates a portable app with included libraries #--without-openexr is advised to create non-redistributable only, # so we still need to find a Termux package with this library. # also add -libsdl to LIBS flag when testing for the preview display... # remove --without-x in case the above works
./configure COMPILED_BY="your name <email@address>" --without-x --disable-io-restrictions LIBS="-lboost_system -lboost_thread" CXX=clang++ CC=clang CFLAGS="-mcpu=native" CXXFLAGS="-mcpu=native"#--disable-shared for portable version
then (the"check" is optional):
the biscuit + coffee render fine.
something's wrong with permissions so more work is required.
(DON'T FORGET TO REPLACE your name <email@address> WITH YOUR NAME AND EMAIL) Termux does not follow Filesystem Hierarchy Standard unlike majority of Linux distributions. You cannot find directories like /bin, /etc, /usr, /tmp and others at usual location. Thus, all programs should be patched and recompiled to meet requirements of the Termux environment otherwise they will not be able to find their configuration files or other data. In the case of POV, This limitation is not a show stopper, since command line accepts all the needed arguments. But please do share if you know what (probably small) modification would allow the "make install" to work. Meanwhile a command to launch a render from povray folder working directory looks like this, outputting image to (dcim) camera gallery:
./unix/povray +I./distribution/scenes/advanced/grenadine/grenadine.pov +W1080 +H1920 +Fj +L./include +L./distribution/scenes/advanced/grenadine +O$HOME/storage/dcim/grenadine
You can download some Mac builds of POV-Ray here: http://megapov.inetart.net/povrayunofficial_mac/
Intel-based computers with system 10.6.8 and later (included 10.9) are supported.
Once you have downloaded the zip-file, move it to the desktop and open your Terminal application. Type in the following lines, executing each one by pressing the Return-key:
cd desktop unzip POV-Ray3_7_CommandLineMacV2.zip cd PovrayCommandLineMacV2 mv Povray37UnofficialMacCmd povray sudo mkdir /usr/local/bin sudo mv povray /usr/local/bin
After opening a new Terminal window you are ready to use the command line version of POV-Ray, by just typing the command:
which should give you the standard POV-Ray startup messages. To do batch renders:
povray render_one.ini ; povray render_two.ini
Should you need to pause a render, then use the following command:
killall -STOP povray
To resume the rendering again, use:
killall -CONT povray
You have a render that needs to be done with a high(er) priority than the render(s) you have currently running? Simple, in a new Terminal window, type the following line:
killall -STOP povray ; povray priority_render.ini ; killall -CONT povray
And last but not least: you can use "Fire and forget" renders! Normally you would have to keep the Terminal window open while a render is in progress, however, when you type:
And then type the following line:
povray test.ini ; zip -m test.zip *.tga ; uuencode test.zip test.zip | /usr/bin/mail -s "Rendered Image" email@example.com &
You may now close the Terminal window if need be, as long as the computer stays on, the render will continue in the background. You will even get the resulting file sent to you in your email!
Or you can have a little fun too, having your Mac talk to you, when a render has finished, by telling you so:
povray test.ini ; say -v samantha "Your render has finished"