Compiling DigiKam on openSUSE 11.4
Why?
The digiKam version found on openSUSE 11.4 is digiKam 1.8, but the last stable version is 2.0, with many changes. It's possible to find the 2.0 on the OBS, but last time I tried it it needed many changes on kde that I didn't want.
Be warned to do a backup of your digikam.db4 files before any install, because it's never sure a new version will be compatible with lod database, it can destroy it or simply forgive the possibility of going back to the old version is anything go wild.
The risk of a destruction of your photo collection is very low, but not null.
the stable source
The stable source for digiKam is Sourceforge, pick the upper version, at the moment it's 2.0.
This will direct you to a tgz file, download it where you like better (for example ~/Download).
Compiling
Preparing the source
Use Dolphin or your prefered explorer to pick the folder in the archive (digikam-2.0.0 here) and copy it to /usr/src/packages/SOURCES/. If you have a stabdard install, this folder should be user writable, no need to be root at any moment. You end up with a /usr/src/packages/SOURCES/digikam-2.0.0/ folder.
In Dolphin, hit F4 to open the terminal pannel in Dolphin. It opens right on the desired folder.
Install the basic compilation stuff
The compilation is prepared by cmake. The best way is first to install the kde compilation pattern. Then when cmake complain, add the lacking part.
It's difficult to list what is needed, because a large part may be already present (specially on my own computer).
The cmake command line
I found the command line on the digiKam mailing, list, thanks to "sleepless"
cmake -DCMAKE_BUILD_TYPE=debugfull -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` .
The debug instruction may be optional, but probably allow to have error messages making it more easy to find errors (as expected :-). Do not forget the ending "blank dot", that gives the working folder (current one for us).
cmake gives you errors when a library is missing. To be able to compile, you have to install the "-devel" packages (the usual package is the runtime one).
The missing libraries
This is the only part, with the install step, that have to be run as root. It's usuallly safer not to be root for all the other compilation parts.
When compiling digiKam for the first time, I had to add some libraries. I sometime added some that could be not mandatory, I will edit this section if I have more infos.
right now I had to add:
marble-devel (the less obvious one) opencv-devel sanebackend-devel libksane-devel libkdcraw-devel libexiv2-devel
You can install them right now with YaST, then run the cmake command line. Hopefully you are done and ready for compilation (no it's not yet done!).
make
Type the command "make" and go drink a coffee :-).
Installing digiKam
It's much better to first uninstall any previous dgiKam version - use YaST for the standard openSUSE digiKam 1.8 version .
digiKam, like post kde applications can't run standalone. It have to be installed, that is not only copied to the kde folder, but linked to the kde libraries used in your system.
the command is to be run as root: make install
Using the new digikam
Any previous link should work. You can also search in the openSUSE menu typing digikam in the search box. You should see a nice bird (http://en.wikipedia.org/wiki/Hummingbird) and the 2.0 tag on the launch logo.
Debugging
In case you did some error, it's always possible to do all this again. You have no need to call the digiKam source folder digikam.2.0, any name works as long as you type the cmake and make commands inside this folder.
From git, the very last digiKam version!
See the Marie-Noelle page for Fedora summary below for openSUSE.
git
git is the software for dealing with archived sources. When correctly used, it copies on your computer the whole original folder with all versions... Install git is you don't have it already.
digiKam git folder
Create your first digiKam git copy:
git clone git://anongit.kde.org/digikam-software-compilation digikam-software-compilation
The last name is the target folder, use any name you like. This is like the tgz downloading described before and can be done whereever you want (Document or Download or anywhere - but better not do it in /usr/src).
Enter this folder. It only have now the basic folders. Populate it with the source with:
perl download-repos
(of course you need to have perl installed) Next time you can update the git folder on your computer with:
perl gits pull
This will only get the new files.
prepare compilation
Copy this new folder with Dolphin in /usr.src, in a folder of it's own (not the digiKam 2.0 is you did it before). I use digikam-git.
Compiling
Use the same steps than described upper in this page. In my case, I had the same dependencies as for digiKam 2.0, so all was already done and the cmake and make commands worked without adding anything.