How to install coot with fink

From OS X Scientific Computing

Jump to: navigation, search

Contents

Compiling Coot from source code on OS X

Use Fink. Please.

fink_refl.png

I've invested a lot of time, and Paul Emsley has invested a lot of time and effort, to get coot and all of its dependencies to compile seemlessly on OS X using Fink. I do my best to keep the package as up to date as possible (at least for 10.4 users. If you have 10.3.x and are willing, you can help me test backward compatibility).

The fink package is described here.

To compile and install the most recently available coot from fink, please do the following:

1. Activate the unstable unstable branch of fink ... however, this CAN be skipped and coot can work ok (OSX 10.4.11, ppc). see here for version information.

2. To update fink's database, issue the command

fink selfupdate

OPTIONAL (OSX 10.4.11, ppc): really only if changing update method : next, run

fink selfupdate-rsync

OPTIONAL (OSX 10.4.11, ppc): next, run

fink index -f

OPTIONAL (OSX 10.4.11, ppc): next, run

fink selfupdate

OPTIONAL (OSX 10.4.11, ppc): next, run

fink update-all

3. To compile coot as well as install all of its dependencies, issue the command

fink install coot

This will install a whole bunch of dependency packages, including the following:


Packages required to run a pre-built coot:

clipper-shlibs (>= 1:2.0.3-5)    ,
gpp4-shlibs (>= 1.0.4-5)         ,
mmdb-shlibs (>= 1.12-5)          ,
ssm-shlibs (>= 0.1-5)            ,
atk1-shlibs (>= 1.20.0-1)        ,
coot-shlibs (= %v-%r)            ,
freeglut-shlibs                  ,
giflib-shlibs                    ,
glib2-shlibs (>= 2.14.0-1)       ,
gmp-shlibs                       , 
gnome-themes-glossy-p            ,
gsl-shlibs                       ,
gtk+2-shlibs (>= 2.12.0-1)       ,
gtkglext1-shlibs                 ,
gtkglext1                        ,
guile18                          ,
guile18-goosh (>= 1.3-2)         ,
guile18-gtk        (>= 2.0-9)    ,
guile18-gtk-shlibs (>= 2.0-9)    ,
guile18-gui                      ,
guile18-lib                      ,
guile18-shlibs                   ,
guile18-www                      ,
guile18-net-http                 ,
imlib-shlibs                     ,
libart2-shlibs                   ,
libgettext3-shlibs               ,
libgnomecanvas2-shlibs (>= 2.20.0),
libiconv                         ,
libjpeg-shlibs                   ,
libpng3-shlibs                   ,
librsvg2-shlibs (>= 2.20.0-1)    ,
libtiff-shlibs                   ,
libtool14-shlibs                 ,
librsvg2-gtk  (>= 2.20.0-1)      ,
pango1-xft2-ft219-shlibs (>= 1.18.4-1) ,
pygtk2-gtk-py25                  ,
python25                         ,
x11

This is a classic example of why using fink makes your life easier. (Yes, it really did take me 20 attempts to get gtk-canvas right.)

Packages required to build and run coot:

All of the above, plus the following:

clipper-dev (>= 1:2.0.3-5)      ,
clipper     (>= 1:2.0.3-5)      ,
fftw	     	 		 ,
gpp4-dev (>= 1.0.4-5)           ,
gpp4     (>= 1.0.4-5)           ,
mmdb-dev (>= 1.12-5)            ,
mmdb     (>= 1.12-5)            ,
ssm-dev (>= 0.1-5)              ,
ssm     (>= 0.1-5)              ,
atk1 (>= 1.20.0-1)              ,
cairo (>= 1.6-1)                ,
expat1                          ,
fontconfig2-dev (>= 2.4.1-1)    ,
freetype219 (>= 2.3.5-1)        ,
freeglut                        ,
gail18-dev                      ,
giflib                          ,
glib2-dev (>= 2.14.0-1)         ,
glitz                           ,
gmp                             ,
gsl                             ,
gtk+2  (>= 2.12.0-1)            ,
gtk+2-dev (>= 2.12.0-1)         ,
gtkglext1                       ,
guile18                         ,
guile18-dev                     ,
guile18-lib                     ,
guile18-gtk-dev (>= 2.0-9)      ,
guile18-net-http                ,
imlib                           ,
libart2 (>= 2.3.16-2)           ,
libgettext3-dev                 ,
libglade2 (>= 2.6.2-1)          ,
libgnomecanvas2-dev (>= 2.20.0) ,
libiconv-dev                    ,
libjpeg                         ,
libpng3                         ,
librsvg2-gtk (>= 2.20.0-1)      ,
libtool14                       ,
pango1-xft2-ft219-dev (>= 1.18.4-1) ,
pixman (>= 0.10.0-1)            ,
pygtk2-gtk-py25-dev             ,
python25                        ,
swig                            ,
x11-dev                         ,
xft2-dev

All of the dependencies:

The dependencies in turn each have their own dependencies, so that if we were to start with a fresh install of Coot, you will find that there are about 145 Coot dependencies in fink in addition to those installed with the base fink package.

This is a compelling reason not to install Coot manually. (On the other hand, you might be able to figure out how to install 5 or 6 fewer packages if you spend the next six months experimenting with this yourself.)

As of 0.4, coot works with gtk+2

This permits use of themes for a more OSX-like experience, among other things.

Click on the thumbnail image below to see a full-size screenshot of Coot with a gtk+2 Aqua-like theme.

thumb-coot-gtk2.png

I've added this theme as a dependency in the coot fink package, but it is off by default. To activate it, issue the following command:

echo "include \"/sw/share/themes/Glossy_P/gtk-2.0/gtkrc\""   >~/.gtkrc-2.0
echo "gtk-font-name = \"LucidaGrande 15\" "  >>~/.gtkrc-2.0

The second line makes the font match OS X menus in size and type. (Depending on your resolution and/or X11 setup, you might want to change the number 15 after LucidaGrande to 12, making the font size smaller)

(That syntax is specific to bash and other sh-like shells. If you have tcsh, just edit a file called ~/.gtkrc-2.0 and put into it the following lines:

include "/sw/share/themes/Glossy_P/gtk-2.0/gtkrc"
gtk-font-name = "LucidaGrande 15"
Personal tools