Coot on 10.15 and 11.X

From OS X Scientific Computing

Jump to: navigation, search

Contents

Big Sur

Big Sur is presenting a few impediments and road blocks, (as is Catalina).

Briefly, Coot now requires a newer version of GTK+2 or GTK+3. Although we have compiled coot on both versions of the OS, and on both intel and amd64, the GUI is non-responsive. We are working on it.

Also, Homebrew looks like it is now a better option than fink for installing most of the needed dependencies.

My goal is to get the current version of COOT working with GTK+3 and Python 3.X (where X=9 currently). The enables an X11-free (or native) version of COOT to be compiled, but there are major run-time problems that need to be solved.

Here is what I've done so far:

Install base dependencies with Homebrew

For many years I have relied on the Fink package management system to provide many of the dependencies on MacOS/OSX that one typically finds in Linux distributions. Fink unfortunately is lagging behind, and the most up-to-date, amd64-compatable option now appears to be Homebrew. Homebrew has some advantages:

1. It works on the new "Apple Silicon" processor natively (you don't need Rosetta2) as well as intel.

2. It is a bit more user-friendly than Fink (but it has its own set of quirks).

3. You can install everything as a pre-compiled binary (assuming you pick the default install location, such as /opt/homebrew in Big Sur, or into /usr/local in older/intel versions).

4. It stays out of the way when you don't need it.

5. It has more up-to-date packages and appears to be very actively maintained.

6. It tries to be X11-independent, when possible.

Install and take a look at the Homebrew pymol package as an example.

Step-by-Step Instructions For Installing Homebrew

For Big Sur, you have to install into /opt. This is actually the "correct" place for this stuff, and Apple no longer permits you to do otherwise. So ... let's make a directory for it:

cd /opt
sudo mkdir homebrew

Now let's use Apple's ACL to allow a user (substitute in your actual username below) to have read/write access to /opt/homewbrew :

sudo -E chmod -R +a 'yourusernamegoeshere   allow list,add_file,search,delete,add_subdirectory,delete_child,chown,file_inherit,directory_inherit' /opt/homebrew 

Now install homebrew like this:

cd /opt
sudo curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew

Add it to your path:

export PATH=/opt/homebrew/bin:$PATH

then see if it works:

brew update
brew install gtk+3  curl  gsl  boost-python3 sqlite  zlib  goocanvas  pygobject3 swig@3

brew tap rdkit/rdkit

brew install rdkit

Optional, but might as well do this, too:

 brew tap brewsci/bio   
 brew tap brewsci/science
 brew tap brewsci/num
 brew tap brewsci/base

brew install pymol

Here is a list of what I have installed with homebrew in case anything was omitted. (There is extra stuff in there.)

Install the crystallographic dependencies, as well as coot, in a separate subdirectory of /opt

Homebrew has older versions of clipper, libccp4, etc, so if those get updated, it should be possible to make a working coot homebrew formula at some point. If anyone wants to do this, please let me know...or just do it. But then let me know.

I created a directory called /opt/coot33

I installed the following dependencies:

glm
fftw2
libccp4
clipper
mmdb2
ssm
refmac and its monomer library

Then I build coot. I'll post my build-script as a link because I am often updating it.

Personal tools