ATTENTION: Post 29 has and updated procedure. This is not working now anymore:
Robyn, I was unable to compile in linuxmint14 ( = ubuntu 12.10) it gives problems that I think is the compiler (4.7.2) or perhaps something inside boost or oiio. I did a lot of tries and no way.
But I was able to compile in ubuntu12.04 (linuxmint 13).
So if you want we can go step by step to compile blender with Cycles (but no OSL):
STEP BY STEP INSTRUCTIONS:
Installing some libraries and programs we are going to use (if you already have them it will do nothing so run this
line in a terminal as it is, don’t change nothing)
sudo apt-get install g++ gawk cmake cmake-curses-gui scons subversion git
yasm patch bzip2 build-essential gettext wget libjpeg-dev libopenjpeg-dev libtiff-dev
libpng-dev libopenexr-dev libmp3lame-dev libogg-dev libfaac-dev libfaad-dev
libschroedinger-dev libvorbis-dev libtheora-dev libx264-dev libx11-dev libxi-dev
libsndfile1-dev libfftw3-dev libopenal-dev libalut-dev libglu1-mesa-dev
libsdl1.2-dev libfreetype6-dev libsamplerate0-dev libavdevice-dev libavformat-dev
libavutil-dev libavcodec-dev libjack-jackd2-dev libswscale-dev freeglut3-dev
libglew-dev libboost-all-dev libspnav-dev spacenavd libsqlite3-dev libbz2-dev
libncurses5-dev libssl-dev liblzma-dev libreadline-dev
First thing: you have a problem with your svn folder (blender source folder) so the best is to delete the folder and download them again. BUT BEFORE do a backup of the whole folder:
Right click on the /home/robyn/blender-svn and choose compress to zip in case you have something there you don’t want to loose. I for example have several folders with my building scripts (we will create one too in this mini tutorial)). Rename this backup of the old svn: /home/robyn/svnold.zip
So right click on this folder /home/robyn/blender-svn and delete it, and create it again, enter in it and download the source:
mkdir /home/robyn/blender-svn
cd /home/robyn/blender-svn
svn co https://svn.blender.org/svnroot/bf-blender/trunk/blender
Is good to have a backup of this blender source folder too. Call it svnnew1.zip. The svn program can go crazy and you would have to download the whole thing again if you don’t have backups. Or you can to try a patch and after it just recover the source folder from the backup. This backup contains all the hidden files the svn program uses too so it works flawlessly).
Well, now we have our source code in /home/robyn/blender-svn/blender
When you want to update the source you do:
cd /home/robyn/blender-svn/blender
svn up
But if you want to update to an exact revision (because you are going to patch for example and you need revision 52955 the patch was created against):
cd /home/robyn/blender-svn/blender
svn update -r 52955
If you had a revision superior or inferior to 52955 will not matter. svn will jump to the revision you indicated.
When using first time svn in a new linux installation, it complains:
svn: OPTIONS of ‘https://svn.blender.org/svnroot/bf-blender/trunk/blender’: Certificate verification error: signed using insecure algorithm (https://svn.blender.org)
To fix it open nautilus and go to your /home/robyn folder and in nautilus menu: View/ShowHiddenFiles
and open the file /home/robyn/.subversion/servers and add a new line at the end of this file with this:
ssl-trust-default-ca = no
Now when using svn it will ask and we answer pressing “p” (permanently) so it will not complain again.
Building libraries:
There is a install-deps.sh script that we will not use (I had problems and I am going to change certain things to be able to compile):
Python 3.3:
Will download it in a folder /home/robyn/src/blender-deps so we create the folder, enter the folder, download, untar and enter the new folder:
mkdir -p /home/robyn/src/blender-deps
cd /home/robyn/src/blender-deps
wget http://python.org/ftp/python/3.3.0/Python-3.3.0.tar.bz2
tar -C /home/robyn/src/blender-deps -xf /home/robyn/src/blender-deps/Python-3.3.0.tar.bz2
cd /home/robyn/src/blender-deps/Python-3.3.0
Before compiling python we create the folder where it is going to be placed:
mkdir -p /home/robyn/blender-svn/lib/linux64
If you already had this folder /home/robyn/blender-svn/lib/linux64, delete all the folders and files inside it (make backup before of course).
At this moment in the /blender-svn folder you have these folders:
/blender (source code)
/lib/linux64 (here we will place all the libraries and must be void at this moment)
We are yet inside the folder /home/robyn/src/blender-deps/Python-3.3.0
and now we configure it (I do different than install-deps.sh script does to avoid an error):
./configure --prefix=/home/robyn/blender-svn/lib/linux64/python-3.3.0 --enable-loadable-sqlite-extensions --with-dbmliborder=bdb --with-computed-gotos --with-pymalloc --enable-shared
make -j5 && make install
make clean
ln -s /home/robyn/blender-svn/lib/linux64/python-3.3.0 /home/robyn/blender-svn/lib/linux64/python-3.3
You will have now in /home/robyn/blender-svn/lib/linux64 two folders. One is just a link to the other:
/python-3.3
/python-3.3.0
Boost 1.51.0:
Download, untar, compile…
cd /home/robyn/src/blender-deps
wget -c “http://sourceforge.net/projects/boost/files/boost/1.51.0/boost_1_51_0.tar.bz2/download” -O /home/robyn/src/blender-deps/boost-1.51.0.tar.bz2
tar -C /home/robyn/src/blender-deps --transform “s,(./?)boost_1_[^/]+(.),\1boost-1.51.0\2,x” -xf /home/robyn/src/blender-deps/boost-1.51.0.tar.bz2
cd /home/robyn/src/blender-deps/boost-1.51.0
./bootstrap.sh
./b2 -j5 -a --with-system --with-filesystem --with-thread --with-regex --with-locale --with-date_time --prefix=/home/robyn/blender-svn/lib/linux64/boost-1.51.0 --disable-icu boost.locale.icu=off install
./b2 --clean
ln -s boost-1.51.0 /home/robyn/blender-svn/lib/linux64/boost
And we have now in /home/robyn/blender-svn/lib/linux64
four folders, two for python and two for boost (two of them are really links to the other two).
Tomorrow will continue…
One question: Do you have /usr/lib/nvidia-current or do you have /usr/lib/nvidia-current-updates folder?