1e0f52d4c7
svn: r17353
115 lines
4.5 KiB
Plaintext
115 lines
4.5 KiB
Plaintext
$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.
|
|
|
|
Uninstall old version
|
|
---------------------
|
|
If you do a source install in the same place of an existing install,
|
|
you need to remove the old version first. You can delete the old
|
|
version by:
|
|
|
|
* deleting the installed directories (for example,
|
|
/usr/share/gramps)
|
|
* OR by running "make uninstall" from the old directory where you
|
|
ran "make install" (not the new GRAMPS directory)
|
|
|
|
GRAMPS is a python application, so loading happens on reading the
|
|
files, meaning that files of a previous version that are no longer
|
|
present in the new version can still be loaded, making the new install
|
|
unstable.
|
|
|
|
Configure vs autogen scripts
|
|
----------------------------
|
|
Configure does not check all dependencies of Gramps, see README for a
|
|
list of all required and optional dependencies.
|
|
|
|
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:
|
|
* autoconf >=2.53
|
|
* automake >=1.9
|
|
* intltool >=0.25
|
|
* glib-gettext >=2.2.0, included in 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.
|
|
|
|
Custom directory installation
|
|
-------------------------------------
|
|
If you would like to install GRAMPS without being root, or in an
|
|
alternative location on windows, supply the --prefix argument to autogen
|
|
or configure.
|
|
|
|
For example:
|
|
./autogen.sh --prefix=$HOME/my_gramps_path
|
|
or
|
|
./autogen.sh --prefix=/cygdrive/c/Projects/gramps
|
|
|
|
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.
|