If you are wondering how I made that rpm, or would like to make an i586 version for yourself the procedure was this :-
1/ Read the documentation at
https://wiki.mageia.org/en/Packagers_RPM_tutorial and set up the build environment as instructed.
2/ Download the shotwell.srpm file from Cauldron
ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/Mageia/distrib/cauldron/SRPMS/core/release/shotwell-0.12.0-0.git20111104.1.mga2.src.rpm Install it with the command
- Code: Select all
rpm -ivh shotwell-0.12.0-0.git20111104.1.mga2.src.rpm
as your normal user NOT root. Now if you look in ~/rpm/SPECS you will find the file shotwell.spec which you must adapt in order to build version 0.11.6. Here is a spec file I have already adapted
http://dl.dropbox.com/u/285824/shotwell.spec3/ Download the shotwell source tarball
http://yorba.org/download/shotwell/0.11 ... .6.tar.bz2 and put it into ~/rpm/SOURCES
4/ cd to the directory ~/rpm/SPECS and run as your normal user.
- Code: Select all
rpmbuild -ba shotwell.spec
If you are VERY lucky it will compile. More likely it will halt saying there are missing packages.
5/ This is where it gets a bit tricky. The package names it asks for are not the same package names on your system. You have to be a bit smart and work out which package is being requested. In most cases it will be asking for development libraries. These are packages that start with 'lib' and end in 'devel' The bit in the middle is likely to be similar to but not necessarily identical to the error message. Use the command 'urpmq -a fragment of text' to work it out.
So for example the error message is
- Code: Select all
pkgconfig(gexiv2)
I use urpmq like this
- Code: Select all
# urpmq -a gexiv
lib64gexiv2-devel
lib64gexiv2_0
libgexiv2-devel
libgexiv2_0
So if building for i586 I install libgexiv2-devel, if building for x86_64 I install lib64gexiv2-devel
and so on. There are two packages you need the spec file will not ask for. You will need to install
libwebkitgtk1.0-devel or lib64webkitgtk1.0-devel
libunique-devel or lib64unique-devel
6/ Once you have all the required dependencies the compile will complete and you will find your brand new rpm in ~/rpm/RPMS Click on it with your file manager to install it.
OK so maybe it is not that easy, but its a great way to learn about Linux.
The alternative to building an rpm is to compile from the tarball directly using .configure, make, install You still need to install the same -devel packages so it is much the same as building an rpm but without the convenience of being able to uninstall it, or to have predefined menu entries.