GEPS 026: update install instructions, readme, add build to svn ignore

svn: r20470
This commit is contained in:
Benny Malengier 2012-09-30 14:59:36 +00:00
parent 9a9ba88cdc
commit d0506dfa84
3 changed files with 36 additions and 95 deletions

111
INSTALL
View File

@ -8,107 +8,56 @@ Uninstall old version
--------------------- ---------------------
If you do a source install in the same place of an existing install, 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 you need to remove the old version first. You can delete the old
version by: version by deleting the installed directories (for example,
/usr/share/gramps
/usr/local/lib/pythonx.x/site-packages/gramps
/usr/local/lib/pythonx.x/dist-packages/
/usr/lib/pythonx.x/site-packages/gramps
/usr/lib/pythonx.x/dist-packages/
where pythonx.x is python2.7 or whatever version you installed gramps with.
* deleting the installed directories (for example, If you don't know the list of all files that Gramps installed, you can reinstall
/usr/share/gramps) it with the --record option, and take a look at the list this produces (so
* OR by running "make uninstall" from the old directory where you python setup.py install --record grampsfiles.txt
ran "make install" (not the new GRAMPS directory)
GRAMPS is a python application, so loading happens on reading the GRAMPS is a python application, so loading happens on reading the
files, meaning that files of a previous version that are no longer 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 present in the new version can still be loaded, making the new install
unstable. unstable!
Configure vs autogen scripts distutils install
---------------------------- -----------------
Configure does not check all dependencies of Gramps, see README for a We do not check all dependencies of Gramps, see README for a
list of all required and optional dependencies. list of all required and optional dependencies.
If you are building from released tarball, you should be able to just If you are building from released tarball, you should be able to just
run "./configure && make". However, if you're building from the SVN, run
the configure is not present. You should auto-generate it by
running ./autogen.sh and then "make" and, finally, "make install". python setup.py build
python setup.py install
where the last must be done as root. You can work with Gramps if you only build
it by pointing the PYTHONPATH to the build directory, but things like MIME type
and desktop entries will not be created then.
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 Custom directory installation
------------------------------------- -------------------------------------
If you would like to install GRAMPS without being root, or in an If you would like to install GRAMPS without being root, or in an
alternative location on windows, supply the --prefix argument to autogen alternative location on windows, supply the --root argument to setup.py
or configure.
For example: For example:
./autogen.sh --prefix=$HOME/my_gramps_path python setup.py install --root ~/test
or or
./autogen.sh --prefix=/cygdrive/c/Projects/gramps python setup.py install --root ~/test --enable-packager-mode
Regular vs local installation The last option, --enable-packager-mode, is needed if you want to disable
----------------------------- execution of post-install mime processing.
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 Packager's issues
------------------ ------------------
The above mime types must be installed. However, the There is a MANIFEST.in file to indicate the work needed.
update-mime-database call to process the newly installed types and To create a source distribution run:
schemas must be done in POST-INSTALLATION.
In packager's world, the install happens on packager's machine python setup.py sdist
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.

View File

@ -14,7 +14,7 @@ recursive-include docs *
recursive-include help * recursive-include help *
recursive-include mac * recursive-include mac *
recursive-include po * recursive-include po *
recursive-include src * recursive-include gramps *
recursive-include test * recursive-include test *
recursive-include windows * recursive-include windows *
@ -24,14 +24,16 @@ exclude data/gramps.keys
exclude data/gramps.xml exclude data/gramps.xml
recursive-exclude data/man *.1 recursive-exclude data/man *.1
recursive-exclude data/man *.1.gz recursive-exclude data/man *.1.gz
exclude src/const.py exclude gramps/const.py
exclude src/data/tips.xml exclude gramps/data/tips.xml
exclude src/plugins/lib/holidays.xml exclude gramps/plugins/lib/holidays.xml
exclude po/*.gmo exclude po/*.gmo
exclude po/.intltool-merge-cache exclude po/.intltool-merge-cache
exclude po/stamp-it exclude po/stamp-it
exclude po/POTFILES exclude po/POTFILES
global-exclude *.pyc global-exclude *.pyc
global-exclude *.py~
global-exclude *.pyo
# Remove directories which should not be included in the distribution # Remove directories which should not be included in the distribution
prune src/guiQML prune src/guiQML

10
README
View File

@ -65,16 +65,6 @@ Documentation
--------------------------------- ---------------------------------
The User Manual is now maintained on the gramps website, The User Manual is now maintained on the gramps website,
http://www.gramps-project.org/wiki/index.php?title=User_manual http://www.gramps-project.org/wiki/index.php?title=User_manual
We might in the future distribute again a manual via gnome-doc-utils, this has not
been decided yet though.
Building on non-Linux systems: i18n support and GNU make
--------------------------------------------------------
If make fails, use gmake (the name FreeBSD gives to GNU make) instead.
You might need a patch also. FreeBSD has in ports a patch ( /usr/ports/science/gramps/files)
you need to apply to po/Makefile.in.in
-------------------------------- --------------------------------
The Gramps Project The Gramps Project