Changes

Jump to: navigation, search

Running a development version of Gramps

4,337 bytes added, 00:14, 11 February 2022
m
Gramps 4.0 and the master branch
The following describes one possible scenario for getting the latest development == Preparation ==* These instructions assume you have installed a recent version of Gramps running:Ubuntu, or Linux Mint(which is Ubuntu based).
* install Install a recent version of Ubuntu (egtext editor if you plan on modifying the Gramps source. 7.04) You can use any text editor such as gedit, kate, or some other linux distribution. Here we will assume Ubuntu and give the install commnds sourcenav (<tt>sudo apt-getinstall sourcenav</tt>) , erik4, SPE, or [http://www.eclipse.org Eclipse] with the python plugin. Instructions on [[Development using Eclipse and Pydev|installing and configuring Eclipse for that distributionGramps development]]. Follow the [[Programming Guidelines|programming guidelines for Gramps]]. * [[Brief_introduction_to_Git#Obtaining_a_copy_of_the_Gramps_repository|Clone the Gramps repository]] : (Beyond == Gramps 4.0 and the scope of master branch =={{man note|Note|The steps in this articlesection have been tested with Ubuntu 14.04}}{{man warn|1=Warning|2=Do not open your existing databases with the master branch, it might destroy your data, but VirtualBox and VMWare provide will make it impossible to use the data in the stable version {{stable_branch}}. To try it out, export your database to a great gramps xml file, eg <code>test_master.gramps</code>, create a new family tree in the master branch, and relatively easy solution import this xml file.}} For the internationalization code to work, you need to getting an independant and/or clean build environmenthave the translation tools.)* install some basic build toolsOn Debian, just run (as root) - ('''Only if Debian installs Gramps 4.0+ as Gramps version!):<pre> sudo apt-get build-essential</pre>dep gramps On Fedora 8 - 10 (Fedora is up to version 17 now so does this still apply?), you will need: yum install intltool gnome-doc-utils gettext git-core rcs === Build ===Now go into the top-level directory and type(earlier versions of Gramps used python 2 and from Gramps 4.2.x and newer only python 3 so substitute as required eg: python3):  python setup.py build * {{man warn|1=Warning|2=Do not install a text editor the development version if you plan on modifying don't know how to version python modules. That is, do '''not''' type {{man label|sudo python setup.py install}}. }} === Run ======= Option 0: run from source repo ====From Gramps 4.2.x and master in the top-level directory you only need to type (this assumes your default python is python3):  python Gramps .py ==== Option 1: run from sourcerepo ====For Gramps 4.1. x and earlier (You can use Gediteither python or python3 substitute as necessary ): Here, we use the code in working directory to run Gramps. This means that compiled python files will be stored there. This is not ideal, but the easiest way to develop Gramps, kate as changes are immediately picked up by the code. Copy the const.py file created in build to your source directory if you want to use your source directory to work with Gramps: cp build/lib.linux-$(switch of tabs!uname -m), or dedicated software like sourcenav (-2.7/gramps/gen/const.py gramps/gen/const.py python Gramps.py ''Note'': the <ttcode>sudo aptlib.linux-$(uname -m)-get sourcenav2.7</ttcode>folder name vary depending on your system (i686 or x86_64). That is it. If you installed some dependencies of Gramps in non-default positions, erik4you need to indicate with PYTHONPATH where they can be found, SPE or even Eclipse and with LD_LIBRARY_PATH where link libraries can be found. Eg, if you install GTK and spell checking from source too, you will need something like: PYTHONPATH=/usr/local/lib/python2.7/site-packages/ LD_LIBRARY_PATH=/usr/local/lib python pluginGramps.py ==== Option 2: use the build code ====* create a Here, we use the code build in <code>trunk/build</code> directory to run Gramps. For compiled programs this is the only way, but for Gramps nothing is compiled. It is not bad however to keep your code separated from your execution, as deleting the build directory is easy. After a code change in your source, you then need to run however <code>python setup.py</code> again to update the build direcotry. To run Gramps sourcefrom build, do cd trunk/build/lib.linux-$(uname -m)-2.7/ python -c 'from gramps.grampsapp import main; main()' Again, it might be needed to set with PYTHONPATH where dependencies can be found, and with LD_LIBRARY_PATH link libraries, see option 1. If you point your PYTHONPATH to the build directory, you can actually run Gramps from a random directory. Like this:  cd ~ mkdir PYTHONPATH=~/gramps-trunk/build/lib.linux-$(uname -m)-2.7/ python -c 'from gramps.grampsapp import main; main()' So, more general: cd PYTHONPATH=~/gramps<-trunk/build/lib.linux-$(uname -m)-2.7/:/usr/local/lib/python2.7/site-packages/ LD_LIBRARY_PATH=/usr/local/pre>lib python -c 'from gramps.grampsapp import main; main()' * get If the build directory is in your PYTHONPATH, you can also just execute the latest copy of GRAMPSgrampsapp.py module. So this will work too: sudo aptcd ~/gramps-trunk/build/lib.linux-$(uname -m)-get subversion2.7/gramps svn co https:PYTHONPATH=~/gramps-trunk/build/lib.linux-$(uname -m)-2.7/python grampsapp.py or again more generally PYTHONPATH=~/gramps-trunk/build/lib.svnlinux-$(uname -m)-2.sourceforge7/:/usr/local/lib/python2.net7/site-packages/ LD_LIBRARY_PATH=/svnrootusr/grampslocal/trunklib python grampsapp.py {{man note|Note using grampsapp.py works|all imports in Gramps have been converted to relative or absolute imports. This conversion was finished at the end of 2012.}} {{man note|1=Known Problems|2=Some problems are due to the migration from GTK2 to GTK3: [[GEPS_029:_GTK3-GObject_introspection_Conversion#Problems|list of known problems]]}} == Gramps 3.4 and before =={{man note|Note|The steps in this section have been tested with Ubuntu 7.04, 7.10, 8.04, 10.04, 10.10 and 12.10 and Mint 14}} * Install the tools we will need: sudo apt-get install build-essential gnome-common libglib2.0-dev git-core gettext === Build ===* Get ready to build GRAMPSGramps: cd trunkThe old versions of Gramps use autotools, so you need to run:
./autogen.sh
* if you get a failure about gnome-common, install it: sudo apt-get install gnome-common ./autogen.sh* if you get a failure about glib-gettext.m4, install itBuild Gramps: sudo apt-get install libglib2.0-dev ./autogen.sh* build GRAMPS
make
 === Run ===* run Run Gramps: python2.5 python src/gramps.py
At this point, any time you want to update to the latest version of Gramps, simply run:
cd ~git pull --rebase python src/gramps/trunk.py svn update python2If some of the Gramps constants have changed and you obtain an error in const.py, rerun the commands <tt>autogen.5 srcsh</tt> and <tt>make</grampstt>.py ==See also==* [[Gramps for Windows with MSYS2]]
It might happen constants have been changed, and you obtain an error on the const.py module. In that case, return <tt>autogen.sh</tt> and the <tt>make</tt> command.
[[Category:Developers/General]]

Navigation menu