This page can't be edited.

Installing coot from subversion ( on ubuntu)

From $1

Table of contents
You are currently comparing two old versions - only when you are comparing against the latest version can you revert. Return to version archive.

Combined revision comparison

Comparing version 21:10, 6 Feb 2009 by harijay with version 06:52, 26 Mar 2009 by harijay.

UPdated notes on installing are at this page also on this wiki

First download the subversion trunk from google code as stated on the google code Coot Source page

svn checkout http://coot.googlecode.com/svn/trunk/ coot-read-only

This creates a directory coot-read-only whereever you issued the above command

Install the packages as described at this page and in the README  . On ubuntu you would use the "sudo apt-get install patch

From a fresh ubuntu install, you also need to install:

 patch
 m4
 g++
 libxext6-dev
 libc6-dev
 libglu1-mesa-dev
 mesa-common-dev
 swig 
 libgtk2.0-dev ( added to list in README ) 
 libgnomecanvas2-dev (added to list in README)

 

After this please us ethe simple autobuild script as describes at the ccp4 wiki:

Briefly:

export AUTOBUILD_INSTALLED=${HOME}/autobuild/coot
export AUTOBUILD_BUILD=${HOME}/autobuild/
export LOGS=$AUTOBUILD_BUILD/logs
export NIGHTLY_DEST_DIR=$AUTOBUILD_BUILD
export STABLE_DEST_DIR=$AUTOBUILD_BUILD
export build_coot_prerelease=1

bash build-it-gtk2-simple python > build.log

If all goes well coot responds:hari@charlie:~/coot-read-only$ bash build-it-gtk2-simple python > build3.log
--15:15:51--  http://www.ysbl.york.ac.uk/~emsley/build-logs/build-notes
           => `build-notes'
Resolving www.ysbl.york.ac.uk... 144.32.72.243
Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7,039 (6.9K) [text/plain]

100%[=====================================================================================================================================>] 7,039         --.--K/s            

15:15:51 (71.45 KB/s) - `build-notes' saved [7039/7039]

build-it-gtk2-simple: line 1083: domainname: command not found
guile-config - Guile version 1.8.5
Python 2.6
BUILDING coot: version coot-0.6-pre-1-revision-1847, python=yes
--15:15:54--  http://www.ysbl.york.ac.uk/~emsley/software/pre-release/coot-0.6-pre-1-revision-1847.tar.gz
           => `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1847.tar.gz'
Resolving www.ysbl.york.ac.uk... 144.32.72.243
Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10,222,101 (9.7M) [application/x-gzip]

100%[=====================================================================================================================================>] 10,222,101   533.53K/s    ETA 00:00

15:16:13 (518.30 KB/s) - `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1847.tar.gz' saved [10222101/10222101]

BUILDING coot: version coot-0.6-pre-1-revision-1847, python=yes
coot build was good.
done coot build.
 

 

This installs a coot binary into the directory mentioned in the AUTOBUILD_BUILD directory in the subdirectory

AUTOBUILD_BUILD=${HOME}/autobuild/
In my case coot is installed in the $HOME/autobuild/coot-Linux-x86_64-ubuntu-8.04.2-gtk2-python/bin

Regular updates

After the initial build . to update coot regularly. change diorectories into the coot-read-only directory into which you checkedout the tree ( in step one above) -

svn checkout http://coot.googlecode.com/svn/trunk/ coot-read-only
                                                        |
                                                        V
                                                    cd into this directory 

and issue the command (svn update)

 

svn update

You should see

me@mymachine:~/coot-read-only$ svn update
U    src/c-interface-preferences.cc
U    src/callbacks.c
U    bldnotes
U    coot-gtk2.glade
Updated to revision 1936.

Now you can just re-run the build as indicated above


bash build-it-gtk2-simple python > build.log

 

Trouble shooting regular updates

Every once in a while . the automatic update indicated above fails . Because something has changed and you need to re-compile everything . for eg. you may see a message such as

error: cannot open Packages index using db3 - No such file or directory (2) error: cannot open Packages database in /var/lib/rpm rpm: To install rpm packages on Debian systems, use alien. See README.Debian. error: cannot open Packages index using db3 - No such file or directory (2) error: cannot open Packages database in /var/lib/rpm rpm: To install rpm packages on Debian systems, use alien. See README.Debian. error: cannot open Packages index using db3 - No such file or directory (2) error: cannot open Packages database in /var/lib/rpm --02:14:24--  http://www.ysbl.york.ac.uk/~emsley/build-logs/build-notes            => `build-notes' Resolving www.ysbl.york.ac.uk... 144.32.72.243 Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 7,039 (6.9K) [text/plain]  100%[====================================>] 7,039         --.--K/s              02:14:25 (58.94 KB/s) - `build-notes' saved [7039/7039]  ./build-it-gtk2-simple: line 1084: domainname: command not found sh: glib-config: not found sh: glib-config: not found sh: glib-config: not found guile-config - Guile version 1.8.5 Python 2.6 BUILDING coot: version coot-0.6-pre-1-revision-1936, python=yes --02:14:28--  http://www.ysbl.york.ac.uk/~emsley/software/pre-release/coot-0.6-pre-1-revision-1936.tar.gz            => `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1936.tar.gz' Resolving www.ysbl.york.ac.uk... 144.32.72.243 Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 10,841,622 (10M) [application/x-gzip]  100%[====================================>] 10,841,622   636.85K/s    ETA 00:00  02:14:46 (613.58 KB/s) - `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1936.tar.gz' saved [10841622/10841622]  BUILDING coot: version coot-0.6-pre-1-revision-1936, python=yes coot build failed, exiting. 

The coot build logs that hep you troubleshoot this are located in $AUTOBUILD_BUILD/logs and more importantly in the $AUTOBUILD_BUILD/logs/gtk2-gcc-4.2.4_and_g++-4.2.4/16-coot.txt

 

SO look for the 16-coot.txt in the $AUTOBUILD_BUILD directory

hari@hj-ubuntu41:~/autobuild$ cd $AUTOBUILD_BUILD
hari@hj-ubuntu41:~/autobuild$ find ./* -name "16-coot.txt"
./logs/gtk2-gcc-4.2.4_and_g++-4.2.4/16-coot.txt

And the bottom of that file may contain the reason for the failed build

me@myubuntu41:~/autobuild$ tail -f ./logs/gtk2-gcc-4.2.4_and_g++-4.2.4/16-coot.txt
checking for pkg-config... /usr/bin/pkg-config
checking for GtkGLExt - version >= 1.0.0... yes (version 1.2.0)
checking for GLUT... yes
checking for MMDB... yes
checking for SSMLib... /home/hari/autobuild/coot-pre-release-gtk2-python
checking for Clipper... no
Error locating Clipper - a CNS-enabled version of Clipper (2.1-090210-ac or later) is required now
need to update libtool here /home/hari/autobuild/hj-ubuntu41_2009-03-26__T06_14_24/coot-0.6-pre-1
make: *** No targets specified and no makefile found.  Stop.
make failed.


You can see here that a "CNS enabled clipper version was not available. So you need to force the build script to recompile cns

Lts find out what convinces the script you have clipper in the first place  . Look at the script(build-it-gtk2-simple) and you will see that it looks for two files

$install_top_dir/include/clipper/ccp4/ccp4_mtz_io.h  

OR

$install_top_dir/include/clipper/contrib/sfscale.h

 

Delete either of those files to force a clipper rebuild. ( For some reason messing with the build_clipper variable in this script does not seem to force building clipper)

so we look for the ccp4_mtz_io.h file in the $AUTOBUILD_BUILD directory and delete it

me@myubuntu41:~/autobuild$ find ./* -name ccp4_mtz_io.h
./coot-pre-release-gtk2-python/include/clipper/ccp4/ccp4_mtz_io.h
./hj-ubuntu41_2009-02-06__T12_53_46/clipper-2.1/clipper/ccp4/ccp4_mtz_io.h
hari@hj-ubuntu41:~/autobuild$ echo $AUTOBUILD_INSTALLED
/home/hari/autobuild/coot

 

rm $AUTOBUILD_BUILD/coot-pre-release-gtk2-python/include/clipper/ccp4/ccp4_mtz_io.h

Then we re-run the build script. This time it forces a selective rebuild of only clipper and this should satisfy the coot build and it should proceed without any problems after that

so in the coot-read-only directory we re-run

build-it-gtk2-simple python > build.log
 

ANd this should hopefully complete as above and tell you that the build was successfull. Of course you could always change the $AUTOBUILD_BUILD and $AUTOBUILD_INSTALLED directory above to a whole "fresk" new directory and rebuild everything from scratch as you did above to make sure all the libraries are updated . But this workaround ( courtesy Bernhard lokhamp) does help get around the failure due to a clipper library update

Version from 21:10, 6 Feb 2009

This revision modified by harijay (Ban)

UPdated notes on installing are at this page also on this wiki

First download the subversion trunk from google code as stated on the google code Coot Source page

svn checkout http://coot.googlecode.com/svn/trunk/ coot-read-only

This creates a directory coot-read-only whereever you issued the above command

Install the packages as described at this page and in the README  . On ubuntu you would use the "sudo apt-get install patch

From a fresh ubuntu install, you also need to install:

 patch
 m4
 g++
 libxext6-dev
 libc6-dev
 libglu1-mesa-dev
 mesa-common-dev
 swig 
 libgtk2.0-dev ( added to list in README ) 
 libgnomecanvas2-dev (added to list in README)

 

After this please us ethe simple autobuild script as describes at the ccp4 wiki:

Briefly:

export AUTOBUILD_INSTALLED=${HOME}/autobuild/coot
export AUTOBUILD_BUILD=${HOME}/autobuild/
export LOGS=$AUTOBUILD_BUILD/logs
export NIGHTLY_DEST_DIR=$AUTOBUILD_BUILD
export STABLE_DEST_DIR=$AUTOBUILD_BUILD
export build_coot_prerelease=1

bash build-it-gtk2-simple python > build.log

If all goes well coot responds:hari@charlie:~/coot-read-only$ bash build-it-gtk2-simple python > build3.log
--15:15:51--  http://www.ysbl.york.ac.uk/~emsley/build-logs/build-notes
           => `build-notes'
Resolving www.ysbl.york.ac.uk... 144.32.72.243
Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7,039 (6.9K) [text/plain]

100%[=====================================================================================================================================>] 7,039         --.--K/s            

15:15:51 (71.45 KB/s) - `build-notes' saved [7039/7039]

build-it-gtk2-simple: line 1083: domainname: command not found
guile-config - Guile version 1.8.5
Python 2.6
BUILDING coot: version coot-0.6-pre-1-revision-1847, python=yes
--15:15:54--  http://www.ysbl.york.ac.uk/~emsley/software/pre-release/coot-0.6-pre-1-revision-1847.tar.gz
           => `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1847.tar.gz'
Resolving www.ysbl.york.ac.uk... 144.32.72.243
Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10,222,101 (9.7M) [application/x-gzip]

100%[=====================================================================================================================================>] 10,222,101   533.53K/s    ETA 00:00

15:16:13 (518.30 KB/s) - `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1847.tar.gz' saved [10222101/10222101]

BUILDING coot: version coot-0.6-pre-1-revision-1847, python=yes
coot build was good.
done coot build.
 

 

This installs a coot binary into the directory mentioned in the AUTOBUILD_BUILD directory in the subdirectory

AUTOBUILD_BUILD=${HOME}/autobuild/
In my case coot is installed in the $HOME/autobuild/coot-Linux-x86_64-ubuntu-8.04.2-gtk2-python/bin

 

Version as of 06:52, 26 Mar 2009

This revision modified by harijay (Ban)

UPdated notes on installing are at this page also on this wiki

First download the subversion trunk from google code as stated on the google code Coot Source page

svn checkout http://coot.googlecode.com/svn/trunk/ coot-read-only

This creates a directory coot-read-only whereever you issued the above command

Install the packages as described at this page and in the README  . On ubuntu you would use the "sudo apt-get install patch

From a fresh ubuntu install, you also need to install:

 patch
 m4
 g++
 libxext6-dev
 libc6-dev
 libglu1-mesa-dev
 mesa-common-dev
 swig 
 libgtk2.0-dev ( added to list in README ) 
 libgnomecanvas2-dev (added to list in README)

 

After this please us ethe simple autobuild script as describes at the ccp4 wiki:

Briefly:

export AUTOBUILD_INSTALLED=${HOME}/autobuild/coot
export AUTOBUILD_BUILD=${HOME}/autobuild/
export LOGS=$AUTOBUILD_BUILD/logs
export NIGHTLY_DEST_DIR=$AUTOBUILD_BUILD
export STABLE_DEST_DIR=$AUTOBUILD_BUILD
export build_coot_prerelease=1

bash build-it-gtk2-simple python > build.log

If all goes well coot responds:hari@charlie:~/coot-read-only$ bash build-it-gtk2-simple python > build3.log
--15:15:51--  http://www.ysbl.york.ac.uk/~emsley/build-logs/build-notes
           => `build-notes'
Resolving www.ysbl.york.ac.uk... 144.32.72.243
Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7,039 (6.9K) [text/plain]

100%[=====================================================================================================================================>] 7,039         --.--K/s            

15:15:51 (71.45 KB/s) - `build-notes' saved [7039/7039]

build-it-gtk2-simple: line 1083: domainname: command not found
guile-config - Guile version 1.8.5
Python 2.6
BUILDING coot: version coot-0.6-pre-1-revision-1847, python=yes
--15:15:54--  http://www.ysbl.york.ac.uk/~emsley/software/pre-release/coot-0.6-pre-1-revision-1847.tar.gz
           => `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1847.tar.gz'
Resolving www.ysbl.york.ac.uk... 144.32.72.243
Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10,222,101 (9.7M) [application/x-gzip]

100%[=====================================================================================================================================>] 10,222,101   533.53K/s    ETA 00:00

15:16:13 (518.30 KB/s) - `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1847.tar.gz' saved [10222101/10222101]

BUILDING coot: version coot-0.6-pre-1-revision-1847, python=yes
coot build was good.
done coot build.
 

 

This installs a coot binary into the directory mentioned in the AUTOBUILD_BUILD directory in the subdirectory

AUTOBUILD_BUILD=${HOME}/autobuild/
In my case coot is installed in the $HOME/autobuild/coot-Linux-x86_64-ubuntu-8.04.2-gtk2-python/bin

Regular updates

After the initial build . to update coot regularly. change diorectories into the coot-read-only directory into which you checkedout the tree ( in step one above) -

svn checkout http://coot.googlecode.com/svn/trunk/ coot-read-only
                                                        |
                                                        V
                                                    cd into this directory 

and issue the command (svn update)

 

svn update

You should see

me@mymachine:~/coot-read-only$ svn update
U    src/c-interface-preferences.cc
U    src/callbacks.c
U    bldnotes
U    coot-gtk2.glade
Updated to revision 1936.

Now you can just re-run the build as indicated above


bash build-it-gtk2-simple python > build.log

 

Trouble shooting regular updates

Every once in a while . the automatic update indicated above fails . Because something has changed and you need to re-compile everything . for eg. you may see a message such as

error: cannot open Packages index using db3 - No such file or directory (2) error: cannot open Packages database in /var/lib/rpm rpm: To install rpm packages on Debian systems, use alien. See README.Debian. error: cannot open Packages index using db3 - No such file or directory (2) error: cannot open Packages database in /var/lib/rpm rpm: To install rpm packages on Debian systems, use alien. See README.Debian. error: cannot open Packages index using db3 - No such file or directory (2) error: cannot open Packages database in /var/lib/rpm --02:14:24--  http://www.ysbl.york.ac.uk/~emsley/build-logs/build-notes            => `build-notes' Resolving www.ysbl.york.ac.uk... 144.32.72.243 Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 7,039 (6.9K) [text/plain]  100%[====================================>] 7,039         --.--K/s              02:14:25 (58.94 KB/s) - `build-notes' saved [7039/7039]  ./build-it-gtk2-simple: line 1084: domainname: command not found sh: glib-config: not found sh: glib-config: not found sh: glib-config: not found guile-config - Guile version 1.8.5 Python 2.6 BUILDING coot: version coot-0.6-pre-1-revision-1936, python=yes --02:14:28--  http://www.ysbl.york.ac.uk/~emsley/software/pre-release/coot-0.6-pre-1-revision-1936.tar.gz            => `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1936.tar.gz' Resolving www.ysbl.york.ac.uk... 144.32.72.243 Connecting to www.ysbl.york.ac.uk|144.32.72.243|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 10,841,622 (10M) [application/x-gzip]  100%[====================================>] 10,841,622   636.85K/s    ETA 00:00  02:14:46 (613.58 KB/s) - `/home/hari/autobuild//sources/coot-0.6-pre-1-revision-1936.tar.gz' saved [10841622/10841622]  BUILDING coot: version coot-0.6-pre-1-revision-1936, python=yes coot build failed, exiting. 

The coot build logs that hep you troubleshoot this are located in $AUTOBUILD_BUILD/logs and more importantly in the $AUTOBUILD_BUILD/logs/gtk2-gcc-4.2.4_and_g++-4.2.4/16-coot.txt

 

SO look for the 16-coot.txt in the $AUTOBUILD_BUILD directory

hari@hj-ubuntu41:~/autobuild$ cd $AUTOBUILD_BUILD
hari@hj-ubuntu41:~/autobuild$ find ./* -name "16-coot.txt"
./logs/gtk2-gcc-4.2.4_and_g++-4.2.4/16-coot.txt

And the bottom of that file may contain the reason for the failed build

me@myubuntu41:~/autobuild$ tail -f ./logs/gtk2-gcc-4.2.4_and_g++-4.2.4/16-coot.txt
checking for pkg-config... /usr/bin/pkg-config
checking for GtkGLExt - version >= 1.0.0... yes (version 1.2.0)
checking for GLUT... yes
checking for MMDB... yes
checking for SSMLib... /home/hari/autobuild/coot-pre-release-gtk2-python
checking for Clipper... no
Error locating Clipper - a CNS-enabled version of Clipper (2.1-090210-ac or later) is required now
need to update libtool here /home/hari/autobuild/hj-ubuntu41_2009-03-26__T06_14_24/coot-0.6-pre-1
make: *** No targets specified and no makefile found.  Stop.
make failed.


You can see here that a "CNS enabled clipper version was not available. So you need to force the build script to recompile cns

Lts find out what convinces the script you have clipper in the first place  . Look at the script(build-it-gtk2-simple) and you will see that it looks for two files

$install_top_dir/include/clipper/ccp4/ccp4_mtz_io.h  

OR

$install_top_dir/include/clipper/contrib/sfscale.h

 

Delete either of those files to force a clipper rebuild. ( For some reason messing with the build_clipper variable in this script does not seem to force building clipper)

so we look for the ccp4_mtz_io.h file in the $AUTOBUILD_BUILD directory and delete it

me@myubuntu41:~/autobuild$ find ./* -name ccp4_mtz_io.h
./coot-pre-release-gtk2-python/include/clipper/ccp4/ccp4_mtz_io.h
./hj-ubuntu41_2009-02-06__T12_53_46/clipper-2.1/clipper/ccp4/ccp4_mtz_io.h
hari@hj-ubuntu41:~/autobuild$ echo $AUTOBUILD_INSTALLED
/home/hari/autobuild/coot

 

rm $AUTOBUILD_BUILD/coot-pre-release-gtk2-python/include/clipper/ccp4/ccp4_mtz_io.h

Then we re-run the build script. This time it forces a selective rebuild of only clipper and this should satisfy the coot build and it should proceed without any problems after that

so in the coot-read-only directory we re-run

build-it-gtk2-simple python > build.log
 

ANd this should hopefully complete as above and tell you that the build was successfull. Of course you could always change the $AUTOBUILD_BUILD and $AUTOBUILD_INSTALLED directory above to a whole "fresk" new directory and rebuild everything from scratch as you did above to make sure all the libraries are updated . But this workaround ( courtesy Bernhard lokhamp) does help get around the failure due to a clipper library update