Difference between revisions of "Build from source"

From Gramps
Jump to: navigation, search
m
(Gramps on handhelds)
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{languages}}
+
{{languages|Build from source}}
 
+
{{stub}}
 
 
 
This page provides access to descriptions of how to build Gramps from source. It is intended for developers, packagers and advanced users.
 
This page provides access to descriptions of how to build Gramps from source. It is intended for developers, packagers and advanced users.
  
 
== Linux ==
 
== Linux ==
  
Gramps 3.4.x is the main current version, and is available in packaged form for some distributions.
+
Gramps 5.1.x is the main current version and is available in packaged form for most distributions.
  
Gramps 4.x is a new version that has different requirements.
+
Gramps 3.4.x is the legacy version, that has different requirements.
  
 
Building from source on Linux is described [[Linux:Build from source|here]]
 
Building from source on Linux is described [[Linux:Build from source|here]]
Line 18: Line 17:
 
* Additional information for Windows users is on page [[Gramps and Windows]].
 
* Additional information for Windows users is on page [[Gramps and Windows]].
  
* The native windows support for Gramps 4.0 is being worked on. You find the current walkthrough [[Run_Gramps40_for_Windows_from_source_using_Python_2.7.3|on the dedicated page]]
+
* The native windows support for Gramps 4.0 is being worked on. You find the a walk-through [[Run_Gramps40_for_Windows_from_source_using_Python_2.7.3|on the dedicated page]]
  
Fortunately for users of Microsoft Windows, some users have made a [[Windows installer]]. So far there have not been any reports of serious differences between the official builds of Gramps and the Windows Installer, so the future looks promising, but please, use this at your own risk.
+
Fortunately for users of Microsoft Windows, a [[Windows installer]] is available.
  
 
== Mac OS X ==
 
== Mac OS X ==
Line 30: Line 29:
 
The latest version of MacPorts Gramps is '''{{version_MacPort}}'''.
 
The latest version of MacPorts Gramps is '''{{version_MacPort}}'''.
  
The latest official unstable fink version is '''3.0.4''' for Mac OS X 10.5 on both PPC and Intel. There is currently no official stable fink version of Gramps. (As at February 2012)
+
The latest official unstable fink version is '''[http://pdb.finkproject.org/pdb/package.php/gramps 3.0.4]''' for Mac OS X 10.5 on both PPC and Intel. There is currently no official stable fink version of Gramps. (As at February 2012)
  
 
Instructions for building the pre-built binary version (Mac OX X Application package) are given at [[Mac OS X:Build from source:Application package]]. Some discussion about earlier attempts is at [[Mac OS X:Build from source:gtk-osx]] with bugs reported at [[Mac OS X:Build from source:gtk-osx:bugs]]
 
Instructions for building the pre-built binary version (Mac OX X Application package) are given at [[Mac OS X:Build from source:Application package]]. Some discussion about earlier attempts is at [[Mac OS X:Build from source:gtk-osx]] with bugs reported at [[Mac OS X:Build from source:gtk-osx:bugs]]
Line 48: Line 47:
 
Gramps can run fine on some small-factor devices. Users have been successful in using Gramps on:  
 
Gramps can run fine on some small-factor devices. Users have been successful in using Gramps on:  
 
* [[Gramps on the Eee|Asus Eee PC]]
 
* [[Gramps on the Eee|Asus Eee PC]]
* [http://gramps-project.org/2011/01/gramps-mobile-interface-part-i/ Gramps Mobile Interface – part I]  & [http://gramps-project.org/2011/01/gramps-mobile-interface-%E2%80%93-part-ii/ part II]
+
* [https://gramps-project.org/blog/2011/01/gramps-mobile-interface-part-i/ Gramps Mobile Interface – part I]  & [https://gramps-project.org/blog/2011/01/gramps-mobile-interface-%E2%80%93-part-ii/ part II]
  
 
== Additional software Gramps can benefit from ==
 
== Additional software Gramps can benefit from ==
Line 54: Line 53:
 
* '''Spell checking''': Installing gnome-python2-extras and python-enchant provides the gtkspell module and the enchant module, which adds spell checking in the notes
 
* '''Spell checking''': Installing gnome-python2-extras and python-enchant provides the gtkspell module and the enchant module, which adds spell checking in the notes
 
* '''[http://www.graphviz.org Graphviz]''', '''Inkscape''': Gramps can make nice Genealogical trees (relationship graphs). These are generated by the Graphviz package, which defines a code (dot), as well as programs to produce graphs (dotty, to be called from command line). This gives you as researcher most power over how your tree will look, but has a learning curve. An alternative is to make a graphical report, converting the tree to an svg file, which you then can open/edit/refine in eg Inkscape.
 
* '''[http://www.graphviz.org Graphviz]''', '''Inkscape''': Gramps can make nice Genealogical trees (relationship graphs). These are generated by the Graphviz package, which defines a code (dot), as well as programs to produce graphs (dotty, to be called from command line). This gives you as researcher most power over how your tree will look, but has a learning curve. An alternative is to make a graphical report, converting the tree to an svg file, which you then can open/edit/refine in eg Inkscape.
* '''ttf-freefont''': Useful as a font that supports a large subset of the unicode and is a true type. This works well with both print and graphviz output.
+
* '''ttf-freefont''': Useful as a font that supports a large subset of the Unicode and is a true type. This works well with both print and graphviz output.
* '''[http://portland.freedesktop.org/wiki/ XdgUtils]''' is a set of command line tools that assist applications with a variety of desktop integration tasks. About half of the tools focus on tasks commonly required during the installation of a desktop application and the other half focuses on integration with the desktop environment while the application is running. Even if the desktop components of your application are limited to an installer, configuration or management tool, Xdg-utils provides you with an easy way to enhance the usage experience of your customers by improving the integration of these components in the user's environment.
+
* '''[http://portland.freedesktop.org/xdg-utils-1.0/ xdg-utils]''' is a set of command line tools that assist applications with a variety of desktop integration tasks. About half of the tools focus on tasks commonly required during the installation of a desktop application and the other half focuses on integration with the desktop environment while the application is running. Even if the desktop components of your application are limited to an installer, configuration or management tool, Xdg-utils provides you with an easy way to enhance the usage experience of your customers by improving the integration of these components in the user's environment.
 
* '''[http://tilloy.net/dev/pyexiv2/overview.html pyexiv2]''' is a module that allows Gramps to read and write metadata embedded in image files.  It is used in the Metadata Viewer and Edit Exif Metadata gramplets.
 
* '''[http://tilloy.net/dev/pyexiv2/overview.html pyexiv2]''' is a module that allows Gramps to read and write metadata embedded in image files.  It is used in the Metadata Viewer and Edit Exif Metadata gramplets.
 
* '''[http://nzjrs.github.com/osm-gps-map/ osmgpsmap]''' is a library which provides GPS mapping functionality.  It is used in the Geography views.
 
* '''[http://nzjrs.github.com/osm-gps-map/ osmgpsmap]''' is a library which provides GPS mapping functionality.  It is used in the Geography views.
Line 65: Line 64:
 
== Upgrading Gramps ==
 
== Upgrading Gramps ==
  
{{man warn|1=Warning|2=If you are '''Upgrading Gramps''' from a previous version you should first follow these intructions.}}
+
{{man warn|1=Warning|2=If you are '''Upgrading Gramps''' from a previous version you should first follow these instructions.}}
  
 
If you are '''Upgrading Gramps''' from a previous version you should first:
 
If you are '''Upgrading Gramps''' from a previous version you should first:
Line 73: Line 72:
 
# '''Install''' the new version of Gramps by following the instructions below
 
# '''Install''' the new version of Gramps by following the instructions below
 
# '''Open''' your existing Family tree.  
 
# '''Open''' your existing Family tree.  
:# Normally, opening just works, and will upgrade your data if needed. If successfull, save the backup you took in a safe place.
+
:# Normally, opening just works, and will upgrade your data if needed. If successful, save the backup you took in a safe place.
 
:# In case opening or upgrading your existing Family Tree failed, do the following:
 
:# In case opening or upgrading your existing Family Tree failed, do the following:
 
::#'''Create''' a new Family Tree
 
::#'''Create''' a new Family Tree

Revision as of 22:39, 7 November 2019

Gramps-notes.png

This article's content is incomplete or a placeholder stub.
Please update or expand this section.


This page provides access to descriptions of how to build Gramps from source. It is intended for developers, packagers and advanced users.

Linux

Gramps 5.1.x is the main current version and is available in packaged form for most distributions.

Gramps 3.4.x is the legacy version, that has different requirements.

Building from source on Linux is described here

MS Windows

  • The native windows support for Gramps 4.0 is being worked on. You find the a walk-through on the dedicated page

Fortunately for users of Microsoft Windows, a Windows installer is available.

Mac OS X

There are several different ways of building Gramps from source on Mac OS X. An overview of building from source is given at Mac OS X:Build from source.

Macports and fink versions of Gramps have been used.

The latest version of MacPorts Gramps is 5.1.6.

The latest official unstable fink version is 3.0.4 for Mac OS X 10.5 on both PPC and Intel. There is currently no official stable fink version of Gramps. (As at February 2012)

Instructions for building the pre-built binary version (Mac OX X Application package) are given at Mac OS X:Build from source:Application package. Some discussion about earlier attempts is at Mac OS X:Build from source:gtk-osx with bugs reported at Mac OS X:Build from source:gtk-osx:bugs

An older build approach is given at Mac OS X:Build from source:Native OS X.

Free/OpenBSD and Solaris

For FreeBSD and Solaris there are experimental install instructions.

  • For FreeBSD use the /usr/ports/science/gramps port. In case of error on FreeBSD 8.0, read ticket #3228.
  • For OpenBSD use the gramps port
  • Installing on BSD is as straightforward as on Linux, apart from some minor issues like tools having different names. See the BSD page for details.
  • Gramps has been successfully installed from source on both Solaris 10 (SPARC) and OpenSolaris X86 (2008.05). Please see the Solaris page for step-by-step details.

Gramps on handhelds

Gramps can run fine on some small-factor devices. Users have been successful in using Gramps on:

Additional software Gramps can benefit from

Gramps does not rely on the following programs, however, having them will increase your productivity:

  • Spell checking: Installing gnome-python2-extras and python-enchant provides the gtkspell module and the enchant module, which adds spell checking in the notes
  • Graphviz, Inkscape: Gramps can make nice Genealogical trees (relationship graphs). These are generated by the Graphviz package, which defines a code (dot), as well as programs to produce graphs (dotty, to be called from command line). This gives you as researcher most power over how your tree will look, but has a learning curve. An alternative is to make a graphical report, converting the tree to an svg file, which you then can open/edit/refine in eg Inkscape.
  • ttf-freefont: Useful as a font that supports a large subset of the Unicode and is a true type. This works well with both print and graphviz output.
  • xdg-utils is a set of command line tools that assist applications with a variety of desktop integration tasks. About half of the tools focus on tasks commonly required during the installation of a desktop application and the other half focuses on integration with the desktop environment while the application is running. Even if the desktop components of your application are limited to an installer, configuration or management tool, Xdg-utils provides you with an easy way to enhance the usage experience of your customers by improving the integration of these components in the user's environment.
  • pyexiv2 is a module that allows Gramps to read and write metadata embedded in image files. It is used in the Metadata Viewer and Edit Exif Metadata gramplets.
  • osmgpsmap is a library which provides GPS mapping functionality. It is used in the Geography views.

Other packages might also be useful:

Upgrading Gramps

Gnome-important.png
Warning

If you are Upgrading Gramps from a previous version you should first follow these instructions.

If you are Upgrading Gramps from a previous version you should first:

  1. Use your old version of Gramps to backup or export your Family Trees to GRAMPS XML (you find backup in the Family Tree menu of recent Gramps versions, otherwise use export in the same menu but uncheck privacy options in the Exporter Assistant in order to export all data).
  2. Uninstall your old version of Gramps
  3. Install the new version of Gramps by following the instructions below
  4. Open your existing Family tree.
  1. Normally, opening just works, and will upgrade your data if needed. If successful, save the backup you took in a safe place.
  2. In case opening or upgrading your existing Family Tree failed, do the following:
  1. Create a new Family Tree
  2. Import your old Gramps XML data in this Family Tree