2008-05-17 05:20:02 +05:30
|
|
|
$Id$
|
|
|
|
|
|
|
|
This file contains some useful details on the installation from source code
|
|
|
|
for GRAMPS. It does not cover installation of a pre-built binary package.
|
|
|
|
For that use your package manager, the rest is already done by the packager.
|
|
|
|
|
|
|
|
|
|
|
|
configure vs autogen scripts
|
|
|
|
----------------------------
|
|
|
|
If you are building from released tarball, you should be able to just
|
|
|
|
run "./configure && make". However, if you're building from the SVN,
|
|
|
|
the configure is not present. You should auto-generate it by
|
|
|
|
running ./autogen.sh and then "make" and, finally, "make install".
|
|
|
|
|
|
|
|
Running ./autogen.sh on this branch of gramps requires the following
|
|
|
|
packages to be installed:
|
|
|
|
* automake-1.9
|
|
|
|
* gnome-common
|
|
|
|
* intltool
|
|
|
|
* libglib2.0-dev (may be called differently on other distros) and
|
|
|
|
maybe something else. If autogen.sh fails, it should inform you what's
|
|
|
|
missing.
|
|
|
|
|
|
|
|
|
|
|
|
Regular vs local installation
|
|
|
|
-----------------------------
|
|
|
|
This version of gramps REQUIRES, among other things, the mime types for
|
|
|
|
gramps be properly installed.
|
|
|
|
|
|
|
|
The usual ./configure, make, and make install as a root should do the trick.
|
|
|
|
|
|
|
|
But be careful if you're using the non-default options or would like
|
|
|
|
to install without being root.
|
|
|
|
|
|
|
|
The latter is possible, but you should supply additional arguments to
|
|
|
|
autogen or configure:
|
|
|
|
--with-mime-dir=$HOME/.local/share/mime
|
|
|
|
Most likely, such local install will also need some prefix with write
|
|
|
|
permissions for you:
|
|
|
|
--prefix=$HOME/my_gramps_path
|
|
|
|
|
|
|
|
Whether you're doing local install or regular install, YOU MUST INSTALL
|
|
|
|
MIME TYPES. YOU HAVE BEEN WARNED!
|
|
|
|
|
|
|
|
|
|
|
|
Installing under non-default prefix
|
|
|
|
-----------------------------------
|
|
|
|
As hinted above, mime types for gramps MUST be properly installed.
|
|
|
|
The "proper install" means installing them where the shared mime system
|
|
|
|
will find them.
|
|
|
|
|
|
|
|
By default, the shared mime systems will look in these places:
|
|
|
|
1. /usr/share/mime
|
|
|
|
2. /usr/local/share/mime : this may be broken on some systems
|
|
|
|
3. $HOME/.local/share/mime : this is a per-user setup, not system-wide
|
|
|
|
There's a number of ways to instruct the shared mime system
|
|
|
|
to look in other places, but this is the whole other story.
|
|
|
|
|
|
|
|
So if you install some place other than /usr/share, you will most
|
|
|
|
likely need to add this option to autogen.sh/configure scripts:
|
|
|
|
--with-mime-dir=/usr/share/mime
|
|
|
|
|
|
|
|
Using the --prefix=/usr/share and installing as a root will most
|
|
|
|
likely do everything correctly, so no extra care needs to be
|
|
|
|
taken. You should take extra care only if you are installing under
|
|
|
|
something like --prefix=/usr/local/my_gramps, /var/gramps123/blah, etc.
|
|
|
|
|
|
|
|
|
|
|
|
Packager's issues
|
|
|
|
------------------
|
|
|
|
The above mime types must be installed. However, the
|
|
|
|
update-mime-database call to process the newly installed types and
|
|
|
|
schemas must be done in POST-INSTALLATION.
|
|
|
|
|
|
|
|
In packager's world, the install happens on packager's machine
|
|
|
|
into something like /tmp/gramps-tmp. However, the postinstall
|
|
|
|
should happen on the user's machine.
|
|
|
|
|
|
|
|
To assist with that, there's an argument available in configure
|
|
|
|
(or autogen, which will pass it to configure) which disables
|
|
|
|
mime type processing:
|
|
|
|
--enable-packager-mode
|
|
|
|
This argument should disable postinstall calls made during
|
|
|
|
make install, and print a nasty warning during configure.
|
|
|
|
IT IS PACKAGER'S RESPONSIBILITY to follow the advice given
|
|
|
|
by the configure output and to copy the appropriate code
|
|
|
|
from the data/Makefile.am into the post-install (and post-uninstall)
|
|
|
|
of the particular packaging system.
|