Difference between revisions of "Solaris Platforms"

From Gramps
Jump to: navigation, search
(opensolaris.org (now redirects to Java.net closure page))
 
(20 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[Category:Documentation]][[Category:Developers/Packaging]]
+
{{stub}}
 +
GRAMPS 3.2.0 has been successfully installed and tested on Solaris 11 Express (SPARC platform) by building GRAMPS from source. ( [http://gramps.1791082.n4.nabble.com/Gramps-3-2-0-and-Solaris-11-Express-td3697457.html Building Gramps on Solaris 11 Express] & [http://gramps.1791082.n4.nabble.com/Gramps-3-2-0-and-Solaris-11-Express-td3697457.html], By Matt Keenan
  
===Solaris Platforms===
+
GRAMPS 3.0.1 has been successfully installed and tested on both the latest releases of Solaris 10 (SPARC platform) and [https://en.wikipedia.org/wiki/OpenSolaris OpenSolaris] 2008.05 (X86 platform) by building GRAMPS from source.
GRAMPS 3.0.1 has been successfully installed and tested on both the latest releases of Solaris 10 SPARC and Solaris X86 ([http://opensolaris.org OpenSolaris] 2008.05) by building GRAMPS from source.
 
  
 
===Installing Dependencies===
 
===Installing Dependencies===
Even with the latest releases of OpenSolaris a number of missing dependencies need to be resolved before you can install GRAMPS, namely ''Berkeley DB'', ''Python BSDDB Interface'' and ''Python ReportLab''.
+
Even with the latest releases of Solaris/OpenSolaris a number of missing dependencies need to be resolved before you can install GRAMPS, namely ''Berkeley DB'', ''Python BSDDB Interface'' and ''Python ReportLab''.
  
 
You will need to install these dependencies before you can move forward and install GRAMPS.
 
You will need to install these dependencies before you can move forward and install GRAMPS.
  
 
====Berkeley DB====
 
====Berkeley DB====
* Download the latest BSDDB core from [http://www.oracle.com/technology/software/products/berkeley-db/db www.oracle.com].
+
* Download the BSDDB core from [http://www.oracle.com/technology/software/products/berkeley-db/db www.oracle.com].  For the GRAMPS 3.0.1 installation I've used Berkeley DB 4.5.20 (although 4.6/4.7 is available I found a number of db corruptions while using these later releases so I stuck with the trusted 4.5x version).
 
* Unpack, build and install
 
* Unpack, build and install
  % gtar zxfB db-4.7.25.tar.gz
+
  % gtar zxfB db-4.5.20.tar.gz
  % cd db-4.7.25/build_unix
+
  % cd db-4.5.20/build_unix
 
  % ../dist/configure --prefix=/usr
 
  % ../dist/configure --prefix=/usr
 
  % gmake
 
  % gmake
Line 19: Line 19:
 
  % su
 
  % su
 
  # gmake install
 
  # gmake install
'''Note:''' Using the ''--prefix=/usr'' on the configure command-line is a must under Solaris, without installing the Berkeley DB in this location Python BSDDB interface fails to install.
+
'''Note:''' Using the '''--prefix=/usr''' on the configure command-line is a must under Solaris, without installing the Berkeley DB in this location Python BSDDB interface fails to install.
  
 
====Python BSDDB Interface====
 
====Python BSDDB Interface====
* Download bsddb3-4.7.0.tar.gz (version at the time of writing), from [http://pybsddb.sourceforge.net pybsddb.sourceforce.net].
+
* Download bsddb3-4.5.0.tar.gz from [http://pybsddb.sourceforge.net pybsddb.sourceforce.net].
 
* Unpack, build and install
 
* Unpack, build and install
  % gtar zxfB bsddb3-4.7.0.tar.gz
+
  % gtar zxfB bsddb3-4.5.0.tar.gz
  % cd bsddb3-4.7.0
+
  % cd bsddb3-4.5.0
 
  % python setup.py build
 
  % python setup.py build
  Found Berkeley DB 4.7 installation.
+
  Found Berkeley DB 4.5 installation.
 
   include files in /usr/include
 
   include files in /usr/include
 
   library files in /usr/lib
 
   library files in /usr/lib
   library name is libdb-4.7
+
   library name is libdb-4.5
 
   running build
 
   running build
 
   running build_py
 
   running build_py
Line 39: Line 39:
 
'''Note:''' You must download and build a version of the Python BSDDB Interface which supports the version of Berkeley DB installed on your system.
 
'''Note:''' You must download and build a version of the Python BSDDB Interface which supports the version of Berkeley DB installed on your system.
  
====Python ReportLab====
+
====Python ReportLab (do not need on 3.2 and later)====
 
*    Download Report 2.1 (latest version at the time of writing), from [http://www.reportlab.org/ftp www.reportlab.org/ftp]
 
*    Download Report 2.1 (latest version at the time of writing), from [http://www.reportlab.org/ftp www.reportlab.org/ftp]
 
* Unpack, build and install
 
* Unpack, build and install
Line 48: Line 48:
 
  % su
 
  % su
 
  # python setup.py install
 
  # python setup.py install
 
  
 
===Installing GRAMPS===
 
===Installing GRAMPS===
 
====Download & Unpack====
 
====Download & Unpack====
* Download GRAMPS 3.0.1 (latest version at time of writing) from the GRAMPS [http://sourceforge.net/project/showfiles.php?group_id=25770&package_id=109309 sorceforge.net] page.
+
* Download GRAMPS 3.0.1 (latest version at time of writing) from the GRAMPS [http://sourceforge.net/projects/gramps/files/Stable/ sourceforge.net] page.
 
* Unpack
 
* Unpack
 
  % gtar zxvf gramps-3.0.1.tar.gz
 
  % gtar zxvf gramps-3.0.1.tar.gz
Line 61: Line 60:
  
 
=====configure=====
 
=====configure=====
Although the GRAMPS 3.0.1 package requires a python version of 2.5 or later.  The Solaris build of python 2.4 works well with GRAMPS 3.0.1 and no issues have been noticed. ''''Note:'''' This change negates the need install a later release of python ;-)
+
Although the GRAMPS 3.0.1 package requires a python version of 2.5 or later.  The Solaris build of python 2.4 works well with GRAMPS 3.0.1 and no issues have been noticed. '''Note:''' This change negates the need install a later release of python ;-)
  
Change ''''line 6297'''' of this file to read from:
+
change '''line 6297''' of this file to read:
minver = map(int, string.split('2.5', '.')) + [0, 0, 0]
 
to:
 
 
  minver = map(int, string.split('2.4', '.')) + [0, 0, 0]
 
  minver = map(int, string.split('2.4', '.')) + [0, 0, 0]
Change ''''line 6329'''' to read from:
+
change '''line 6329''' to read:
minver = map(int, string.split('2.5', '.')) + [0, 0, 0]
 
to:
 
 
  minver = map(int, string.split('2.4', '.')) + [0, 0, 0]
 
  minver = map(int, string.split('2.4', '.')) + [0, 0, 0]
  
 
=====src/gramps.py=====
 
=====src/gramps.py=====
Change ''''line'''' of this from to readm from:
+
change '''line 97''' to read:
MIN_PYTHON_VERSION = (2, 5, 0, '', 0)
 
to:
 
 
  MIN_PYTHON_VERSION = (2, 4, 0, '', 0)
 
  MIN_PYTHON_VERSION = (2, 4, 0, '', 0)
  
 
=====gramps.sh.in=====
 
=====gramps.sh.in=====
By default /bin/sh under Solaris is bourne shell, in order to allow the script to work we need to modify the first line of this file from sh to ksh (or bash if you prefer):
+
Unlike other UNIX/Linux versions the default /bin/sh under Solaris is the older bourne shell.  In order to allow the script to work we need to modify the first line of this file to read ksh (or bash if you prefer):
#! /bin/sh
 
to:
 
 
  #!/bin/ksh
 
  #!/bin/ksh
  
 
=====src/gen/db/base.py=====
 
=====src/gen/db/base.py=====
Change ''''line 39'''' of this file to read from:
+
change '''line 39''' to read:
from bsddb import db
 
to:
 
 
  from bsddb3 import db
 
  from bsddb3 import db
  
=====src/geb/db/dbdir.py=====
+
=====src/gen/db/dbdir.py=====
Change ''''line 39'''' of this file to read from:
+
change '''line 39''' to read:
from bsddb import dbshelve, db
 
to:
 
 
  from bsddb3 import dbshelve, db
 
  from bsddb3 import dbshelve, db
  
 
=====src/Editors/_EditFamily.py=====
 
=====src/Editors/_EditFamily.py=====
Change ''''line 28'''' of this from to read from:
+
change '''line 28''' to read:
  from bsddb import db as bsddb_db
+
  from bsddb3 import db as bsddb_db
to:
 
from bsddb3 import db as bsddb_db
 
  
 
=====src/GrampsDbUtils/_GrampsBSDDB.py=====
 
=====src/GrampsDbUtils/_GrampsBSDDB.py=====
Change ''''line 38'''' of this to read from:
+
change '''line 38''' to read:
from bsddb import dbshelve, db
 
to:
 
 
  from bsddb3 import dbshelve, db
 
  from bsddb3 import dbshelve, db
  
 
=====src/GrampsLogger/_ErrorReportAssistant.py=====
 
=====src/GrampsLogger/_ErrorReportAssistant.py=====
Change ''''line 5'''' of this file to read from:
+
change '''line 5''' to read:
import sys, os,bsddb
+
  import sys, os, bsddb3
to:
+
change '''line 102''' to read:
  import sys, os,bsddb3
 
Change ''''line 102'''to read from:
 
str(bsddb.__version__),
 
to:
 
 
  str(bsddb3.__version__),
 
  str(bsddb3.__version__),
  
 
=====src/plugins/Leak.py=====
 
=====src/plugins/Leak.py=====
Change ''''line 34'''' to read from:
+
change '''line 34''' to read:
from bsddb.db import DBError
 
to:
 
 
  from bsddb3.db import DBError
 
  from bsddb3.db import DBError
 +
 +
====Configure GRAMPS====
 +
To configure GRAMPS all you need to do is run the configure script:
 +
./configure
 +
Othe roptions to configure that are useful include telling the script to setup GRAMPS to install in a directory of your  choosing instead of the default (/usr/local):
 +
./configure --prefix=/your/dest/dir
 +
====Compile GRAMPS====
 +
To compile GRAMPS simple issue make.
 +
make
 +
====Testing the Build====
 +
To test the GRAMPS build, simply run:
 +
python ./src/gramps.py
 +
 +
====Run Install====
 +
Finally, type make to install into your desired location
 +
make install
 +
 +
[[Category:Documentation]]
 +
[[Category:Developers/Packaging]]

Latest revision as of 04:29, 1 July 2021

Gramps-notes.png

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


GRAMPS 3.2.0 has been successfully installed and tested on Solaris 11 Express (SPARC platform) by building GRAMPS from source. ( Building Gramps on Solaris 11 Express & [1], By Matt Keenan

GRAMPS 3.0.1 has been successfully installed and tested on both the latest releases of Solaris 10 (SPARC platform) and OpenSolaris 2008.05 (X86 platform) by building GRAMPS from source.

Installing Dependencies

Even with the latest releases of Solaris/OpenSolaris a number of missing dependencies need to be resolved before you can install GRAMPS, namely Berkeley DB, Python BSDDB Interface and Python ReportLab.

You will need to install these dependencies before you can move forward and install GRAMPS.

Berkeley DB

  • Download the BSDDB core from www.oracle.com. For the GRAMPS 3.0.1 installation I've used Berkeley DB 4.5.20 (although 4.6/4.7 is available I found a number of db corruptions while using these later releases so I stuck with the trusted 4.5x version).
  • Unpack, build and install
% gtar zxfB db-4.5.20.tar.gz
% cd db-4.5.20/build_unix
% ../dist/configure --prefix=/usr
% gmake

% su
# gmake install

Note: Using the --prefix=/usr on the configure command-line is a must under Solaris, without installing the Berkeley DB in this location Python BSDDB interface fails to install.

Python BSDDB Interface

% gtar zxfB bsddb3-4.5.0.tar.gz
% cd bsddb3-4.5.0
% python setup.py build
Found Berkeley DB 4.5 installation.
  include files in /usr/include
  library files in /usr/lib
  library name is libdb-4.5
  running build
  running build_py
  running build_ext

% su
# python setup.py install

Note: You must download and build a version of the Python BSDDB Interface which supports the version of Berkeley DB installed on your system.

Python ReportLab (do not need on 3.2 and later)

  • Download Report 2.1 (latest version at the time of writing), from www.reportlab.org/ftp
  • Unpack, build and install
% gtar zxfB ReportLab_2_1.tgz
% cd reportlab_2_1/reportlab
% python setup.py build

% su
# python setup.py install

Installing GRAMPS

Download & Unpack

  • Download GRAMPS 3.0.1 (latest version at time of writing) from the GRAMPS sourceforge.net page.
  • Unpack
% gtar zxvf gramps-3.0.1.tar.gz
% cd gramps-3.0.1

Prebuild Changes

A small number of changes are needed prior to compiling and installing GRAMPS 3.0.1 on the Solaris platform

configure

Although the GRAMPS 3.0.1 package requires a python version of 2.5 or later. The Solaris build of python 2.4 works well with GRAMPS 3.0.1 and no issues have been noticed. Note: This change negates the need install a later release of python ;-)

change line 6297 of this file to read:

minver = map(int, string.split('2.4', '.')) + [0, 0, 0]

change line 6329 to read:

minver = map(int, string.split('2.4', '.')) + [0, 0, 0]
src/gramps.py

change line 97 to read:

MIN_PYTHON_VERSION = (2, 4, 0, , 0)
gramps.sh.in

Unlike other UNIX/Linux versions the default /bin/sh under Solaris is the older bourne shell. In order to allow the script to work we need to modify the first line of this file to read ksh (or bash if you prefer):

#!/bin/ksh
src/gen/db/base.py

change line 39 to read:

from bsddb3 import db
src/gen/db/dbdir.py

change line 39 to read:

from bsddb3 import dbshelve, db
src/Editors/_EditFamily.py

change line 28 to read:

from bsddb3 import db as bsddb_db
src/GrampsDbUtils/_GrampsBSDDB.py

change line 38 to read:

from bsddb3 import dbshelve, db
src/GrampsLogger/_ErrorReportAssistant.py

change line 5 to read:

import sys, os, bsddb3

change line 102 to read:

str(bsddb3.__version__),
src/plugins/Leak.py

change line 34 to read:

from bsddb3.db import DBError

Configure GRAMPS

To configure GRAMPS all you need to do is run the configure script:

./configure

Othe roptions to configure that are useful include telling the script to setup GRAMPS to install in a directory of your choosing instead of the default (/usr/local):

./configure --prefix=/your/dest/dir

Compile GRAMPS

To compile GRAMPS simple issue make.

make

Testing the Build

To test the GRAMPS build, simply run:

python ./src/gramps.py

Run Install

Finally, type make to install into your desired location

make install