STFC
Computational Science and Engineering Department
CCP4
BBSRC
CCP4Home What is CCP4? CCP4 Projects Downloads Documentation Courses Developers CCP4 people

CCP4 on MacOSX


From v4.2 Mac OSX is just part of the normal CCP4 build.

Background

MacOSX has UNIX(BSD) underpinnings. This means there are many free/shareware tools to make life easier:

Programs

Naked Mac OSX does not have the tools need to compile CCP4, so you will need:
  1. C complier: from Apple developer centre or on the Developer Tools which came with the OS

  2. fortran compiler: gfortran for gcc 4. The latest gfortran binaries are available from the gfortran wiki, R for Mac OS X" (my preference), HPC on Mac OSX and fink.

    Note, it is not advisable to use gfortran 4.0 pre 4.0.2 to compile the ccp4 suite.

  3. X11: if X is wanted. Install X11.app and the additional X11 SDK from the OS X installation media. X11 SDK is installed as part of the developers tools (XCode)
    • OS X 10.5
      • X11 is installed by default, however, for 10.5.0 it is buggy.
      • Update X11 from Xquartz
      • do not set $DISPLAY as this is set automatically
    • 10.4 and earlier
      • X11 is not installed by default.
      • Install from installation media, the run software update to get the latest version, or download X11 from Apple (41.7 MB), or Xquartz
      • .
      • when running from a Terminal set $DISPLAY

    If you do not have the SDK it is available from Bill.

  4. CCP4: CCP4 distribution

Binaries

Binaries are distributed for this platform

Roll your own

The source code installation is the same as for any other supported system
  1. unzip and untar the tar file
  2. edit and source ccp4.setup
  3. configure Darwin , gnu compilers.
  4. make
  5. make install

Fink it

Alternatively: if a fink style installation is preferred Bill Scott has produced fink scripts for installing CCP4.

Please note that these are not officially supported and are not compatible with the CCP4 Update mechanism.

CCP4i

The extended tcl/tk required to run ccp4i is available from our Downloads pages, ftp site or fink.

The latest version of tcl/tk is 8.5, however, blt is not under active development so we recommed using tcl 8.4, which requires blt4.2z. Currently blt4.2z is part of the fink stable branch.

Note: bltwish works with X, not aqua, so does not come with AquaTcl. Set CCP4I_TCLTK in ccp4.setup. This is especially required if the tcl and tk libraries are in a non-standard location, such as /sw.

During the first run of ccp4i on a machine, certain initializations are performed, these require write permission to the installation directory.


e-mail: ccb@ccp4.ac.uk

Special thanks to Dr. Michael Love and Dr. Martin Noble
also those brave enough to test out 4.1.1: Derek Logan, William Scott


Problems

General problems are given at CCP4 problems. What follows are MacOSX features, quirks, and bugs.
  1. --/--/01: nawk not found
  2. 02/08/01: linker fails with relocation error
  3. --/--/01: configure fails to recognise conditional substitutions
  4. 01/05/02: CCP4 configure script does not find libtcl
  5. 01/05/02: java AstexViewer.jar fails
  6. 01/05/02: configure does not recognise host type
  7. 01/05/02: ccp4mapwish fails to link
  8. 12/05/02: linker fails with relocation error for gcc3
  9. 17/05/02: ccp4 does not make with pmake
  10. 23/05/02: ccp4i, Kill Job fails
  11. 24/05/02: g++ 2.95.2 libstdc++2 does not include sstream
  12. 31/05/02: X programs expect higher resolution than available.
  13. 24/06/02: ccp4i, help browser fails to open
  14. 04/07/02: mosflm build takes excessive time
  15. --/11/02: gcc 2.95.2 precomp failure using glib 1.2
  16. 29/11/02: DepositFiles directory has no permissions set
  17. 12/12/02: Fink does not place g2c.h in /usr/include
  18. 23/01/03: Using the native blas/lapack in 10.2
  19. 26/01/03: Apple X11 beta Warning
  20. 02/05/03: Segmentation fault due to low stacksize
  21. 01/10/03: xlC Command not found for tcsh
  22. 01/10/03: g77 3.4 compilation of ccp4
  23. 19/11/03: xloggraph isblank and filesize errors
  24. 28/11/03: beast and xlf smp
  25. 22/03/04: use of xlf with xlc/xlc++
  26. 09/02/04: g77 internal compiler error
  27. 16/03/04: rotgen Undefined symbols _acosf and _atanf
  28. 17/03/04: pdb_extract, multiple definition of symbols
  29. 04/03/04: undefined symbols restFP and saveFP
  30. 13/05/04: libjwc_f.0.dylib fails to build
  31. 26/05/04: binaries are missing CHTML in ccp4.setup-xxx
  32. 26/05/04: refmac5 TLS misbehaves for xlf compiled program and binaries
  33. 09/08/04: there is no examples directory in the default OS X binary distribution
  34. 03/09/04: XUSERFILESEARCHPATH not set in ccp4.setup-sh
  35. 03/09/04: xdlmapman popup selecting map type does not appear
  36. 31/08/04: libxlf90.dylib on DYLD_LIBRARY_PATH stops render working
  37. 23/12/04: mixed parsing of IO stream fails due to buffering of fortran stream
  38. 18/08/05: g77 on Tiger
  39. 26/09/05: ld: Undefined symbols: _fprintf$LDBLStub
  40. 22/02/06: dynamic build of libmmdb.dylib fails
  41. 22/02/06: libjwc_f.dylib fails to link giving common objects for MH_DYLIB errors
  42. 22/02/06: malloc/free errors in C++ executables
  43. 28/02/06: ccp4i package installation fails when updating
  44. 05/04/06: gfortran on mactel
  45. 07/04/06: litend function gives wrong result for mactel
  46. 22/03/07: xlf compiled scala on ppc yields truncated scales file
  47. 10/09/07: xplot84driver fails with bad format error
  48. 15/04/08: proclean loops forever on mactel
  49. 28/04/08: sudo does not inherit environment on leopard
  50. 30/11/08: leopard installer deletes old package
  51. 09/01/08: Coot crashes when running Refmac
  52. 05/02/09: bad library links
  53. 08/03/09: BALBES_ROOT incorrectly set for ccp4.setup-csh
  54. 11/03/09: ERROR could not start run_imosflm couldn't execute "ccp4iwish": no such file or directory
  55. 17/03/09: MrBUMP fails to run due to a KeyError
  56. 11/06/10: CCP4 programs unavailable in coot
  57. 30/06/12: F_UFMTENDIAN issues with font84.dat
  58. 20/07/12: sing check_zero_res.py
    • Bug: /etc scripts
      the uniquefy, amore-sphere and extractsummary scripts have a test to find the best version of awk to use
      # find awk executable
      for myawk in nawk gawk awk
      do
        if ( `type $myawk >/dev/null 2>&1` ); then
          break
        fi
      done
      
    • Effect: this fails incorrectly under OSX as there is no type command.
    • System: MacOSX 10.0/1
    • Report Date: --/--/01
    • Status: Fixed in 4.2
    • Fix: replace type with test -f
      diff -r1.10 uniqueify
      129,131c129
      <   if ( `type $myawk >/dev/null 2>&1` ); then
      <     break
      <   fi
      ---
      >     test -f $myawk && break
      
    • Bug: linker fails with relocation overload for large programs
    • Effect: linking fails with (TEXT__,text__) relocation error
      %vim big.c
      static char big[0x10000000];
      
      int main()
      {
        return 0;
      }
      
      %cc big.c
      /usr/bin/ld: /usr/lib/crt1.o relocation overflow for relocation entry 24 in section (__TEXT,__text) (displacement too large)
      /usr/bin/ld: /usr/lib/crt1.o relocation overflow for relocation entry 29 in section (__TEXT,__text) (displacement too large)
      
    • System: MacOSX 10.0/1 gcc 2.95.2
    • Report date: 2/8/2001 Darwin Bug report: 2691946
    • Status: Fixed in gcc 3.3 (and probably 3.1). For gcc 2.95.2 the fix should be included in library.c for 4.2; for latter versions of CCP4 the fix has been applied.
    • Fix:From apple tech pages:
      #if defined (__APPLE__) && defined (__GNUC__) && ( __GNUC__ < 3 )
      void _carbon_init(int argc, char **argv) {}
      void _objcInit(void) {}
      #endif
      
    • Bug: configure syntax error
    • Effect: configure behaves unexpectedly
    • System: MacOSX 10.0/1
    • Report date: --/--/01
    • Status: largely fixed in CCP4 4.2. Still a problem for external packages, eg BLT
    • Fix: replace conditional substitutions X@".." by the BSD standard X:@".." (@ is -,+,=)
      The problem does not seem to be in effect for later versions of Mac OS X, which have a more complete sh shell.

    • Bug: configure script detects tcl.h, but not libraries
    • Effect: Mapslicer will not be compiled
    • System: MacOSX, ccp4 v4.2
    • Report date: 01/05/02
    • Status: fix for 4.2 follows. Applied from 4.2.1 onwards.
    • Fix: in $CCP4/configure
      1815c1815
      <       tryexts="a so"
      ---
      >       tryexts="a so dylib"
      
      MacOSX uses dylib.
      Note: for 4.2.x it is suggested that for the initial compilation --disable-mapslicer is used as there are problems with the linking stage.

    • Bug: standalone AstexViewer fails
    • Effect:
       java AstexViewer.jar
      gives
      Exception in thread "main" java.lang.NoClassDefFoundError:
    • System: General, ccp4 4.2
    • Report date: 01/05/02
    • Status: Fixed from 4.2.1 onwards
    • Fix: for 4.2 AstexViewer runs correctly as applet.

    • Bug: General configure scripts (for example BLT)
    • Effect: fails with "cannot guess host type"
    • System: MacOSX, ccp4 v4.2
    • Report date: 01/05/02
    • Status: Fixed for CCP4 4.2.1 onwards, but often a problem for others
    • Fix: Update config.guess and config.sub to respond to Darwin in uname -r
      config.guess:
      case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
          *:Darwin:*:*)
              echo powerpc-apple-Darwin${UNAME_RELEASE}
              exit 0 ;;
      .
      .
      esac
      
      config.sub:
      case $os in
              -Darwin*)
                      ;;
      .
      .
      esac
      
      this should get you through the configure at least.

    • Bug: ccp4mapwish fails to link
    • Effect:
      /usr/bin/ld: Undefined symbols:
      _f__xargc
      _f__xargv
      make: *** [ccp4mapwish] Error 1
      
    • System: MacOSX 10.0, 10.1(?), ccp4 4.2.x
    • Report date: 01/05/02
    • Status: mapslicer rewritten without fortran dependencies for v5.0
    • Fix: for 4.2, none as yet. Portland Group discusses this from the point of view of mixed g77 pgf77 compilation (here).

    • Bug: linker fails with relocation error for gcc3.1
    • Effect:
        usr/bin/ld: /usr/lib/crt1.o relocation overflow for relocation entry 33 in section (__TEXT,__text) (displacement too large)
      
    • System: MacOSX / gcc 3.1 (pre-release)
    • Report date: 12/05/02
    • Status: few reports on the internet/mailing list
    • Fix: unknown (more details would be appreciated), upgrade to gcc 3.3/g77 3.4

    • Bug: ccp4 fails to make using pmake
    • Effect: various libraries and programs fail to compile, generating errors of the form (lib/src)
      "makefile", line 150: Missing dependency operator
      "makefile", line 162: Missing dependency operator
      .
      .
      
    • System: all (observed for Mac OSX with GNU-Darwin)
    • Report date: 17/05/02
    • Status: no plans to investigate at this moment
    • Fix: to use the normal make (GNU-make)

    • Bug: ccp4i: Kill Job fails.
    • Effect: Kill Job command fails with
      Failed to run Unix ps -ef command
      
    • System: Mac OSX, CCP4 4.2
    • Report date: 23/05/02
    • Status: fixed in 4.2.1, ps jax or ps lax gives the required information for parsing (local.tcl line 552).
    • Fix: 21/06/02. The above can be used, although a more extensive solution is contained in the following diff and patch (patch local.tcl < local.tcl.patch )
      diff -r1.15 local.tcl
      561,563c561,602
      < #d_sum Return the output of Unix command ps -ef as a list
      < #d_desc Execute the ps -ef command and return the output as a list, with \
      < each line of output as an element of the list. Returns an empty string \
      ---
      > #d_sum Return the process information from the Unix ps command
      > #d_desc Determine the possible forms of the "ps" command for the current \
      > operating system, then execute using the get_process_list command to \
      > return the output as a list (with each line of output as an element of \
      > the list). Returns an empty string on error.
      >   # Determine the possible ps commands for this system
      >   global tcl_platform
      >   # Ideally I would prefer to put the tcl_platform(os) value into
      >   # e.g. the "system" array, cf system(OPSYS) for tcl_platform(platform) 
      >   # But this is the only place at present that the o/s name is required
      >   # so this should be sufficient for the time being
      >   if { $tcl_platform(os) == "Darwin" } {
      >     # MacOs (Darwin) ps command
      >     set cmd_list [list "|ps lax"]
      >   } elseif { $tcl_platform(os) == "SunOS" } {
      >     # SunOS ps command(s)
      >     # Depends whether you are using BSD ps or not
      >     set cmd_list [list "|ps -ef" "|ps lax"]
      >   } else {
      >     # Default
      >     set cmd_list [list "|ps -ef"]
      >   }
      >   # Call get_process_list for each possible command
      >   # Stop when you find one that works - or run out of possibilities
      >   foreach ps_command $cmd_list {
      >     set process_list [get_process_list $ps_command]
      >     if { $process_list != "" } {
      >       # Got a non-blank list of process info - return
      >       return $process_list
      >     }
      >   }
      >   # All commands failed
      >   return ""
      > }
      > 
      > #-------------------------------------------------------------
      > proc get_process_list { ps_command } {
      > #-------------------------------------------------------------
      > #d_sum Execute and return the output of Unix command ps ...
      > #d_desc Internal command called from GetProcessList. Executes the \
      > supplied "ps" command and returns the output as a list, with each \
      > line of output as an element of the list. Returns an empty string \
      565c604,607
      <   if [catch {set input [open "|ps -ef" r]
      ---
      > #d_arg ps_command The ps ... command appropriate to this system \
      > (normally ps -ef)
      >   # Try to execute the process list command
      >   if [catch {set input [open "$ps_command" r]
      568c610
      <     return ""
      ---
      >      return ""
      
      (P.Briggs)

    • Bug: g++: gcc 2.95.2 libstd++2 does not include sstream.
    • Effect: compilation fails.
    • System: Mac OS X 10.0/1 gcc 2.95.2
    • Report date: 24/05/02
    • Status: fix on web
    • Fix: Download sstream from gnu.
      sstream was added in 2.95.3. The libstdc++2 that comes with 2.96, and the libstdc++ with 3.x contain sstream.
      Upgrade to gcc 3.x compilers
      Note: 2.96 is brocken for most things.

    • Bug: ccp4i: help browser fails to open.
    • Effect: attempting to use the Help button on the interface results, after a delay, in a CCP4 interface dialogue box with the first line "After opening Netscape, apparently failed to open page"
    • System: Mac OSX, ccp4 4.2
    • Report date: 24/06/02
    • Status: fix applied in 4.2.1
    • Fix: This fix allows /Applications/Internet\ Explorer/Internet\ Explorer.app to be used. It will not go directly to the reference, it will, however, open the page. This fix also checks for a null hypertext browser. The full viewer name must be entered in the "System Administration -> Interface Configuration ->Hypertext Viewer" box. The patch (patch local.tcl < local.tcl.patch ) contains this and number 10.
      diff -c -2 -r1.16 local.tcl
      *** local.tcl   2002/06/18 12:50:19     1.16
      --- local.tcl   2002/06/24 13:45:27
      ***************
      *** 97,101 ****
      --- 97,113 ----
          global configure
          global system
      +   global tcl_platform
        
      +   # Check that a viewer is set in configure
      +   if { [regexp "^\[ \t\]*$" $configure(HYPERTEXT_VIEWER)] } {
      +     WarningMessage "Cannot open requested URL:
      + 
      + \"$url\"
      + 
      + The hypertext viewer command is not set in
      + the CCP4i configuration window."
      +     return
      +   }
      + 
          set target {}
          set remote 0
      ***************
      *** 153,160 ****
        
            } else {
      ! 
               # Command to open requested URL in non-netscape browser
               set viewer_cmd "exec $configure(HYPERTEXT_VIEWER) $url &"
      ! 
            }
          }
      --- 165,175 ----
        
            } else {
      !       if { $tcl_platform(os) == "Darwin" } {
      !        # for IE on make open only opens pages
      !         set viewer_cmd "exec open -a {$configure(HYPERTEXT_VIEWER)} [lindex [split $url # ] 0 ]"
      !       } else {
               # Command to open requested URL in non-netscape browser
               set viewer_cmd "exec $configure(HYPERTEXT_VIEWER) $url &"
      !       }
            }
          }
      
    • Bug: mosflm build takes excessive time.
    • Effect: control.f takes a large amount of resources to compile at -O2 (in excess of 380 Mb) which can lead to problem with machines with a lack of physical memory.
    • System: Mac OSX, ccp4 4.2/4.2.1
    • Report date: 04/07/02
    • Status: Downgraded to -O1 in 4.2.2, known difficulty for 4.2
    • Fix: downgrade the optimization level to -O1 or -O0, preferably by for control.f only by editing $CCP4/x-windows/Mosflm/mosflm/Makefile,
      control.o:
                      ${F77} ${MOSFLAGS} control.f
      
    • Bug: gcc 2.95.2 precomp failure on glib-1.2
    • Date: --/11/02
    • Effect: precompilation fails with message
      XXX.c: 1317: bad macro argument list
      
    • System: using glib 1.2 headers under MacOSX 10.1 (gcc 2.95.2), eg mapview
    • Status: discussed at macosx.forked.net.
    • Fix: add --traditional-cpp to precompilation stage flags, usually through CFLAGS. Or, upgrade the compilers.
    • Bug: DepositFiles directory is created with/changed to d--------- permissions
    • Date: 29/11/2002
    • Effect: cannot write the harvesting file from SCALA or REFMAC5 eg
      Harvest: Cant mkdir HARVESTHOME/DepositFiles/gaba - no deposit file
      
    • System: ccp4 4.2
    • Status: fix provided 02/12/2002, applied for 4.2.1 onwards
    • Fix: apply the following patch file to library.c

      patch library.c < library.c.patch

      then remake libccp4.a, scala and refmac5

    • Bug: Fink does not place g2c.h in /usr/include
    • Date: 12/12/2002
    • Effect: compilation fails as compiler is unable to locate g2c.h
    • System: fink 0.5.0a/0.6.2, g77 v3.1/3.4
    • Status: work around provided
    • Work around: set up softlinks to the /usr locations
      ln -s /sw/bin/g77 /usr/bin/g77
      ln -s /sw/include/g2c.h /usr/include/g2c.h
      ln -s /sw/lib/libg2c.a /usr/lib/libg2c.a
      
    • Bug: Using the native blas/lapack in 10.2
    • Date: 23/01/2003
    • Effect: probably not much
    • System: Mac OSX 10.2/10.3, ccp4 4.2.x
    • Status: at this moment a work around, but later in the build for 5.0
    • Work around: edit the configure script such that it states
             Darwin)
               XLAPACK_LIB="-framework vecLib"
               LAPACKLIB="vecLib"
               noblas=yes
               trylapack=
               tryblas=
      
      ( thanks to Markus Meier )
    • Bug: Bug in the install name of the Apple X11 beta libraries
    • Date: 26/01/2003
    • Effect: some software will build incorrectly, and forward- compatibility with future X11 releases will be broken
    • System: Apple X11 Beta on Mac OSX
    • Status: Fixed in beta 2
    • Bug: Segmentation fault due to low stacksize
    • Date: 02/05/2003
    • Effect: Certain programs fail immediately due to a Segmentation fault. These include
      • sortmtz
      • cad
      • fhscal
      • revise
      • truncate
      The problem being caused by an increase in the maximum number of mtz columns to 500.
    • System: Mac OS X, ccp4 5.0
    • Status: Work around provided
    • Fix: Increase the maximum stacksize using (64M example)
      csh% limit stacksize 65536
      sh$ ulimit -s 65536
      
    • Comment: xlC Command not found from tcsh
    • Date: 01/10/03
    • System: Mac OS X with ibm compilers beta release
    • Effect: I am compiling my C++ code using the command "xlc", and am unable to get the code to compile and link successfully. Is there another command that I should be using when compiling C++ code?
    • Status: for the full release IBM have renamed the compiler xlc++ (feb '04).
    • Fix: When compiling C++ code, invoke the compiler using the command "xlC". The command "xlc" should be used for C code and the command "xlC" should be used for C++ code. If the /opt/ibmcmp/vacpp/6.0/bin directory exists on an HFS+ filesystem, which is case-insensitive, there will only exist the command "xlc". When the"xlc" command is invoked as "xlC", the C++ compiler is called correctly. If using tcsh as the shell and if the /opt/ibmcmp/vacpp/6.0/bin directory has been added to the PATH, entering the command "xlC" still results in "Command not found.". To invoke the "xlC" command when using tcsh as the shell, specify its absolute path (for example, /opt/ibmcmp/vacpp/6.0/bin/xlC). This is not an issue when using the bash shell.
    • Comment: g77 3.4 compilation of ccp4
    • Date: 01/10/03
    • System: Mac OS X with recent non-apple gcc, ccp4 4.2.x
    • Status: fixed for 5.0, update 4.2.2 ccp4-4.2.2_xlf.tar.gz
    • Information: from Bill Scot <wgscott@chemistry.ucsc.edu>
      Dear Phil et al: 
      
      g77 3.4 and either gcc 3.1 or 3.3 will work to compile ccp4, but I had
      to make a few changes... 
      
      Briefly, you now need to include explicitly the flag -lcc_dynamic in
      order to get g77 3.4 to work, and if you link to apple's frameworks, the
      syntax used to do so has changed.   
      
      In the configure file, I added this along with new (different syntax)
      flags to get ccp4 to use Apple's blas/lapack libs: 
      
      
      Add this to the configure file after line 1815: 
      
      Darwin) 
      XLAPACK_LIB="-lcc_dynamic -Wl,-framework -Wl,vecLib" 
      LAPACKLIB="-lcc_dynamic -Wl,-framework -Wl,vecLib" 
      noblas=yes 
      trylapack= 
      tryblas= 
       ;; 
      
      THEN, I also had to ensure that the x-windows makefiles contained this.
      This, along with one other fix that has been required since 10.2, can be
      done as follows in the tcsh: 
      
      
      source include/ccp4.setup 
      
      .../configure --with-x Darwin 
      
      # additional ugly hacks to get X-windows programs to compile 
      
      perl -pi -e 's/EXTRA_LOAD_FLAGS = -lg2c//g' x-windows/XCCPJIFFY/Imakefile 
      
      foreach distmakefile ( `find -iname Makefile | grep x-windows` ) 
          perl -pi -e 's/-lxdl_view/-lxdl_view -lcc_dynamic/g' $distmakefile 
          perl -pi -e 's/-lXt/-lXt -lcc_dynamic/g' $distmakefile 
          perl -pi -e 's/-L\/usr\/X11R6\/lib/-L\/usr\/X11R6\/lib -lcc_dynamic/g' $distmakefile 
      end 
      # now fix the one I just broke 
      perl -pi -e 's/dynamicextra/dynamic -lxdl_viewextra/g'
      x-windows/Rotgen/Makefile 
      # 
      make 
      make install 
      make clean 
      
      
      If you want fink to do the dirty work for you, download this: 
      
      
      http://www.chemistry.ucsc.edu/~wgscott/xtal/ccp4.info 
      
      This file will also now install a ccp4.setup file that places well with
      bash and zsh. 
      
    • Bug: xloggraph isblank and filesize errors
    • Date: 19/11/2003
    • Effect: isblank() causes a Parsing error when files are read
      filesize() returns the incorrect file size for an open file
    • System: Mac OSX, CCP4 v4.2.2
    • Status: patches provided, included in ccp4 v5.0
    • Fix:
      Apply the following patches to EditString.c and log_file.c.  Recompile and install xloggraph.
      
      ( thanks to Markus Meier )
    • Comment: beast and xlf smp
    • Date: 28/11/2003
    • Effect: turns on openMP code giving a speed up on dual processor machines, eg beast.exam runs in 56s vs 89s on 2x2GHz.
    • System: dual processor Macs with xlf compilers, ccp4 4.2.2 and 5.0
    • Status: hack
    • Information:
      1. edit beast_/sizes.fh 
            PARAMETER (MAXTHREAD=2)
      2a. edit src/Makefile to add -qsmp=omp and use xlf_r compiler
      2b. recompile
      3. set OMP_NUM_THREADS environmental variable to 2
      
    • Comment: use of xlf with xlc/xlc++
    • Date: 22/03/2004
    • Effect: for the Darwin_ibm_compilers programs will fail to link due to missing libraries, eg libimbc++.dylib, libxlf90.dylib
    • System: ibm xlf 8.1 and xlc 6.0 (February release)
    • Status: hack
    • Information: The xlf compiler setup is designed to work with the gnu compilers. Strange as it may seem, the current new_install script does not respond to the presence of xlc, and vice-versa. Therefore, the compilers have no information about the others libraries.

      The simplest solution is to add the other compilers library path to xlf.cfg or vac.cfg

      /etc/opt/ibmcmp/xlf/8.1/xlf.cfg
      108c108
      <           libdirs    = -L/opt/ibmcmp/xlsmp/1.4/lib,-L/opt/ibmcmp/xlf/8.1/lib,-L/opt/ibmcmp/vac/6.0/lib
      ---
      >           libdirs    = -L/opt/ibmcmp/xlsmp/1.4/lib,-L/opt/ibmcmp/xlf/8.1/lib
      
      /etc/opt/ibmcmp/vac/6.0/vac.cfg
      111c111
      <           libdirs    = -L/opt/ibmcmp/xlsmp/1.4/lib,-L/opt/ibmcmp/vac/6.0/lib,-L/opt/ibmcmp/vacpp/6.0/lib
      ---
      >           libdirs    = -L/opt/ibmcmp/xlsmp/1.4/lib,-L/opt/ibmcmp/vac/6.0/lib,-L/opt/ibmcmp/vacpp/6.0/lib,-L/opt/ibmcmp/xlf/8.1/lib
      
    • Comment: g77 3.4 internal compiler error
    • Date: 09/02/04
    • Effect: possible failures in compilation of molrep, refmac or mosflm
      [address=437ffffc pc=00380318]
      /Users/shared/ccp4-5.0-beta/src/molrep_/molrep_prog.f: In subroutine
      `calcrs_asc':
      In file included from
      /Users/shared/ccp4-5.0-beta/src/molrep_/molrep_prog.f:0:
      /Users/shared/ccp4-5.0-beta/src/molrep_/molrep_prog.f:26870: internal
      compiler error: Segmentation Fault
      
    • System: Mac OSX, g77 3.4 (experimental)
    • Status: known fault with compiler
    • Information: This seems to occur when optimizing at -O2 or above, in routines that have large loops, the dimension of which is set by a parameter. Lowering the optimization level usually works, or using -fno-unroll-loops sometimes works.

      From: Bill Scott

      I wrote a fairly simple-minded shell-script to try to deal with getting it all to compile.  Basically, it relies on having the dependencies installed in /sw, but this will install into /usr/local/ccp4/ccp4-5.0  (unless you edit the script).  It does some sanity checks, then downloads and tries to compile everything.  Then it checks to see if refmac, sapi and sfcheck,  (I have different results on different computers that should behave identically), and if they are not there, it makes a second attempt at compiling using different optimizations that at least for me got around the problem.  If you or anyone knows of others, please let me know, and I will add these.  So, in short, this doesn't mess with the optimizations unless it needs to.
      
      I configure --with-x Darwin  only, but feel free to experiment.  You can download the shell script here:
      
      http://www.chemistry.ucsc.edu/%7Ewgscott/xtal/ccp4_install.zsh
      
      Save it as a text file (zsh suffix) and chmod a+x ccp4_install.zsh, and run it from anywhere like this:
      
      sudo ccp4_install.zsh
      
      It will make the directories and download the tarball for you.
      

      From: Jianghai Zhu

      Fink just update g77 in 10.3 tree. I don't know about 10.2 tree. The new version of g77 is not experimental anymore.
      
      Reading specs from /sw/lib/gcc/powerpc-apple-darwin7.3.0/3.4.0/specs
      Configured with: ../gcc-3.4.0/configure --prefix=/sw --enable-languages=f77 --infodir=/share/info --libexecdir=/lib --disable-shared
      Thread model: posix
      gcc version 3.4.0
      
      I used this new g77 to compile ccp4 5.0. All those problems are gone. Everything went fine. I configured it as "./configure --with-x --with-shared-libs --with-netlib-lapack --with-fftw=/sw/lib Darwin". I even changed the optimization level of molrep and refmac5 to -O2. Molrep and Refmac5 can be compiled with no error.
      
    • Comment: rotgen Undefined symbols _acosf and _atanf
    • Date: 16/03/04
    • Effect:
      ld: Undefined symbols:
      _acosf
      _atanf
      make: *** [rotgen] Error 1
      
      This is traced to libjwc_c module rdm.c and the system maths functions. The maths functions are declared in /usr/include/math.h and defined in /usr/lib/libm.dylib->libSystem.dylib . This only contains symbols acos and atan.
    • System: Mac OSX 10.2.8 and 10.3, gcc 3.3 and 3.1, ccp4 5.0beta and maybe earlier
    • Status: Possible fixes, applied in 5.0 release (requires testing)
    • Fix: For 10.3 the float entry points to the maths functions are contained in libmx. This is accessed via -lmx which should be postpended to the link line for rotgen.
      For 10.1 (gcc 3.1) wrappers for atan, acos and asin may be added to library_utils.c (ccp4 v5.0) or library.c (ccp4 v4.2)
      #if defined (__APPLE__) && defined (__GNUC__) && ( __GNUC__ == 3 ) && (__GNUC_MINOR__ == 1)
      float acosf(float x) {
        return (float) acos( (double) x);
      }
      
      float atanf(float x) {       
        return (float) atan( (double) x);
      }
      
      float asinf(float x) {       
        return (float) asin( (double) x);
      }
      #endif
      
    • Bug: pdb_extract fails to compile due to multiply defined symbols
    • Date: 17/03/2004
    • Effect: For the xlc++ compiler linking of pdb_extract fails due to mulitple definitions of symbols, eg _MAX_UWORD
    • System: Mac OSX 10.3, ibm C++ compiler
    • Status: under investigation
    • Fix: allow compilation using gnu compiler (default)

    • Bug: undefined symbols restFP and saveFP
    • Date: 04/03/2004
    • Effect:
      /usr/bin/ld: warning prebinding disabled because of undefined symbols
      /usr/bin/ld: Undefined symbols:
      restFP
      saveFP
      collect2: ld returned 1 exit status
      
    • System: Mac OSX, compiler (eg g77) not linking to libgcc.a
    • Status: known difficulty, hopefully worked around for 5.0
    • Fix: the symbols are defined in gcc/darwin/default/libgcc.a, which is soft linked to by /usr/lib/libcc_dynamic.a and /usr/lib/libgcc.a , therefore adding -lcc_dynamic or -lgcc to the LDFLAGS will solve the problem.

    • Bug: libjwc_f.0.dylib fails to build
    • Date: 13/05/2004
    • Effect: Make install gives
      /bin/sh ./mkinstalldirs /sw/share/xtal/ccp4-5.0/lib
       /bin/sh ./libtool --mode=install /usr/bin/install -c  libjwc_f.la /sw/share/xtal/ccp4-5.0/lib/libjwc_f.la
      /usr/bin/install -c .libs/libjwc_f.0.dylib /sw/share/xtal/ccp4-5.0/lib/libjwc_f.0.dylib
      install: .libs/libjwc_f.0.dylib: No such file or directory
      make[1]: *** [install-libLTLIBRARIES] Error 71
      make: *** [install-am] Error 2
      
    • System: ccp4 v5.0, OSX, none Apple gnu compiler, eg g77
    • Status: fix provided
    • Fix: Apply the following change to $CCP4/x-windows/libjwc/libjwc_f/configure before the configure (config.status --recheck followed by config.status) step:
      retrieving revision 1.18
      retrieving revision 1.19
      diff -r1.18 -r1.19
      13547c13547
      <   if $CC -v conftest.$ac_ext -o conftest$ac_exeext 2>&1 | grep 'Apple' >/dev/null || $CC -v conftest.$ac_ext -o conftest$ac_exeext 2>&1 | grep 'powerpc_apple_darwin' >/dev/null; then
      ---
      >   if $CC -v conftest.$ac_ext -o conftest$ac_exeext 2>&1 | grep 'Apple' >/dev/null || $CC -v conftest.$ac_ext -o conftest$ac_exeext 2>&1 | grep 'powerpc-apple-darwin' >/dev/null; then
      

    • Bug: binaries are missing CHTML in ccp4.setup-xxx
    • Date: 26/05/2004
    • Effect: When attempting to draw the refmac5 task window in ccp4i, a dialog box appears stating "environment variable CHTML not set"
    • System: Mac OSX 5.0 binaries
    • Status: fix provided
    • Fix: edit ccp4.setup-sh to add "export CHTML=<Root dir>/ccp4/docs", and ccp4.setup-sh to add "setenv CHTML <Root dir>/ccp4/docs".

      (thanks to Mischa Machius for spotting this)

    • Bug: refmac5 TLS misbehaves for xlf compiled program and binaries
    • Date: 26/05/2004
    • Effect: The program will seem to run correctly, however, the following will be evident in the logfile
       Data line--- RANGE  'A   6.' 'A  30.' ALL
      1525-005 The formatted I/O statement on the internal file cannot be completed because the end of the record was reached.  The program will recover by ignoring the remaining data items in the I/O statement.
      
      
      ######  TLS Group Definitions ######
      
        Group:   1:    No. of pieces:   1
       Chain:  A Span:   -1   -1
      
      and the TLS results will all be 0.
    • System: Mac OSX 5.0 binaries, and xlf compiled
    • Status: fix provided for source code build
    • Fix: make the following changes to $CCP4/src/refmac5_/tls_newdic_non.f, then recompile
      diff -r1.11 tls_newdic_non.f
      622c622
      <         READ(RANGEFROM(2:IDOT-1),'(I19)') ITLSGRP_FROM(IPIECE,IGR)
      ---
      >         READ(RANGEFROM(2:IDOT-1),*) ITLSGRP_FROM(IPIECE,IGR)
      629c629
      <         READ(RANGETO(2:IDOT-1),'(I19)') ITLSGRP_TO(IPIECE,IGR)
      ---
      >         READ(RANGETO(2:IDOT-1),*) ITLSGRP_TO(IPIECE,IGR)
      
    • Bug: there is no examples directory in the OS X binary distribution
    • Date: 09/08/04
    • Effect: Attempts to run the examples scripts will fail with missing files
    • System: Packagemake.app based mac binaries
    • Status: not strictly a bug, more a feature
    • Fix: This is a feature following on from the reorganisation of the files in the Mac OS X binaries (I do not need the same structure as the build, so what the ....). The examples are in a separate package, in the disk image, called ccp4.exam.pkg. This can be installed in the usual manner, although CEXAM will have to be set manually. The information is in ReadMe.rtf
    • Bug: XUSERFILESEARCHPATH not set in ccp4.setup-sh
    • Date: 03/09/04
    • Effect: xloggraph window draws incorrectly
    • System: ccp4.setup-sh in mac binaries
    • Status: work around provided
    • Fix: edit $CBIN/ccp4.setup-sh to add
      export XUSERFILESEARCHPATH=${CCP4}/lib/X11/app-defaults/%N
      
    • Bug: xdlmapman popup selecting map type does not appear
    • Date: 01/09/04
    • Effect: xdlmapman is unusable
    • System: 10.3 G5 binaries or source
    • Status: investigating
    • Fix: The problem seems to be with the X library on the Mac. Running through the debugger the popup menu is drawn, but immediately the main window is rendered on top of it. This is contrary to the X standard.
    • Bug: libxlf90.dylib on DYLD_LIBRARY_PATH stops render working
    • Effect: render program from rastep package failed with symbol __clc not found, referenced by $CCP4/lib/libxlf90.dylib
    • System: OS X binaries
    • Status: work around provided
    • Fix: Comment out the "setenv DYLD_LIBRARY_PATH ..." or "export DYLD_LIBRARY_PATH=..."lines from ccp4.setup-csh or ccp4.setup-sh, respectively. This should not effect the ccp4 binaries as we use the RPATH mechanism.
    • Bug: mixed parsing of IO stream fails due to buffering of fortran stream
    • Effect: the input into a program may be incomplete, eg for DM when using the OMAT keyword
    • System: OS X binaries, including 5.0.2
    • Status: work around provided
    • Fix: The XLFRTEOPTS keyword can be used to turn off buffering of stream 0, 5 and 6
      csh% setenv XLFRTEOPTS buffering=disable_preconn
      
    • Bug: g77 on Tiger
    • Effect: Well, Tiger comes with gcc 4.0 which means no g77. The fink installation of g77 (gcc 3.4.1) will complain of no c++filt at when linking.
    • System: OS X Tiger (10.4)
    • Status: work around provided to use g77, although g77 3.4 is compatible with gnu4, and the later (4.0.3+) versions of gfortran compile the suite.
    • Fix: A good description is at http://astron.berkeley.edu/~colby/howto/mac-faq.html#fortrantrouble. Install the BSD.pkg from the installation DVD. BSD.pkg is in System/Installation/Packages.
      [ccp4m:/Users/Shared/ccp4-5.99.3] ccb% setenv CC gcc-3.3
      [ccp4m:/Users/Shared/ccp4-5.99.3] ccb% setenv CXX g++-3.3
      [ccp4m:/Users/Shared/ccp4-5.99.3] ccb% setenv FC g77
      [ccp4m:/Users/Shared/ccp4-5.99.3] ccb% sudo gcc_select 3.3 -root
      Default compiler has been set to:
      gcc version 3.3 20030304 (Apple Computer, Inc. build 1809)
      [ccp4m:/Users/Shared/ccp4-5.99.3] ccb% configure --with-x Darwin
      
    • Bug: ld: Undefined symbols: _fprintf$LDBLStub
    • Effect: Using the combination of g++3.3 and gcc4 linking may fail
    • System: OS X Tiger (10.4)
    • Status: work around provided
    • Fix: From the fink sourceforge archive:
      One last reason you may be confused is that there is sometimes (but  
       not always) a bug that occurs when linking C++ and C code on account  
       of C++ using version 3.3 and C using version 4.0. When you link C and  
       C++ code together, you must use the C++ compiler since C doesn"t know  
       about the stdc++ runtime library. But g++-3.3 (which is the same as g+ 
       + and c++ for fink packages) doesn"t know about certain new gcc-4.0  
       features.
       
       If your packages doesn"t experience a problem linking C and C++ code  
       together, then you don"t have to worry about this. On the other hand,  
       if it does, you"ll see this:
       
       ld: Undefined symbols:
       _fprintf$LDBLStub
       ...
       
       In that case, you need to add -lSystemStubs to the compilation command.
      
    • Bug: dynamic build of libmmdb.dylib fails
    • Effect: linking stage exits with error
      ld: multiple definitions of symbol ___umoddi3
      /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/libgcc.a(_umoddi3.o) private external definition 
      of ___umoddi3 in section (__TEXT,__text)
      /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libgcc_s.10.4.dylib(_umoddi3_s.o) 
      definition of ___umoddi3
      /usr/bin/libtool: internal link edit command failed
      
    • System: OS X Tiger (10.4) with ccp4 6.0.0 and earlier --with-shared-lib
    • Status: possible work around provided
    • Fix: Replace use of CXX with CC in the main ccp4 configure ($CCP4/configure)
      
      *** configure	21 Feb 2006 11:30:43 -0000	1.374
      --- configure	22 Feb 2006 15:21:00 -0000
      ***************
      *** 2115,2119 ****
          if test "$shared_lib" = yes; then
            SHARED_LIB_CFLAGS=${SHARED_LIB_CFLAGS:-'-fPIC -fno-common'}
      !     SHARE_LIB='${CXX} -dynamiclib -flat_namespace -undefined suppress ${SHARED_LIB_CFLAGS} -install_name libmmdb.dylib -all_load libmmdb.a -o libmmdb.dylib -lstdc++ ; ${CC} -dynamiclib -flat_namespace -undefined suppress ${SHARED_LIB_CFLAGS} -install_name libccp4c.dylib -all_load libccp4c.a  -o libccp4c.dylib'
            SHARE_INST='${INSTALL_DATA} `pwd`/libmmdb.dylib ${libdir}/libmmdb.dylib; ${INSTALL_DATA} `pwd`/libccp4c.dylib ${libdir}/libccp4c.dylib'
          fi     
      --- 2115,2119 ----
          if test "$shared_lib" = yes; then
            SHARED_LIB_CFLAGS=${SHARED_LIB_CFLAGS:-'-fPIC -fno-common'}
      !     SHARE_LIB='${CC} -dynamiclib -flat_namespace -undefined suppress ${SHARED_LIB_CFLAGS} -install_name libmmdb.dylib -all_load libmmdb.a -o libmmdb.dylib; ${CC} -dynamiclib -flat_namespace -undefined suppress ${SHARED_LIB_CFLAGS} -install_name libccp4c.dylib -all_load libccp4c.a  -o libccp4c.dylib'
            SHARE_INST='${INSTALL_DATA} `pwd`/libmmdb.dylib ${libdir}/libmmdb.dylib; ${INSTALL_DATA} `pwd`/libccp4c.dylib ${libdir}/libccp4c.dylib'
          fi   
      
    • Bug: libjwc_f.dylib fails to link giving common objects for MH_DYLIB errors
    • Effect: libjwc_f.a and libjwc_f.dylib are not built.
    • System: various fortran compilers for fortran dynamic libraries, ccp4 6.0.0 and earlier
    • Status: workaround provided
    • Fix: The simplest way to get around this is to use static compilation (do not use the --with-shared-lib switch). Alternatively, the following turns of dylib build for libjwc_f, in the main ccp4 configure ($CCP4/configure)
      
      *** configure	16 Feb 2006 14:49:33 -0000	1.373
      --- configure	21 Feb 2006 11:28:28 -0000
      ***************
      *** 4068,4095 ****
          # for g77 3.1 some builds do not have no-common for system libs,
          # so disable for now
          case $system in
      !   Darwin )
      ! cat >conftest.f <<_ACEOF
      ! int main ()
      ! { 
      !  ;
      ! }
      ! _ACEOF
      !      if test $FC = g77 && $FC -v conftest.f -o conftest 2>&1 | grep '3.1' >/dev/null ; then
      !     echo "configure --disable-shared --libdir=${libdir}"
      !     ( touch /tmp/$$.cache_file 2>/dev/null && \
      !       cat /dev/null > /tmp/$$.cache_file && \
      !       ./configure --disable-shared --libdir=${libdir} --cache-file=/tmp/$$.cache_file ) || \
      !       ./configure --disable-shared --libdir=${libdir}
      !      else
      !    echo "configure $xopts --libdir=${libdir}"
      !     ( touch /tmp/$$.cache_file 2>/dev/null && \
      !       cat /dev/null > /tmp/$$.cache_file && \
      !       ./configure $xopts --libdir=${libdir} --cache-file=/tmp/$$.cache_file ) || \
      !       ./configure $xopts --libdir=${libdir}
      !      fi
      !     ;;
      !   Darwin_ibm_compilers )
            echo "configure --disable-shared --libdir=${libdir}"
            ( touch /tmp/$$.cache_file 2>/dev/null && \
              cat /dev/null > /tmp/$$.cache_file && \
      --- 4068,4074 ----
          # for g77 3.1 some builds do not have no-common for system libs,
          # so disable for now
          case $system in
      !   Darwin_ibm_compilers | Darwin )
            echo "configure --disable-shared --libdir=${libdir}"
            ( touch /tmp/$$.cache_file 2>/dev/null && \
              cat /dev/null > /tmp/$$.cache_file && \
      
    • Bug: malloc/free errors in C++ executables
    • Effect:
      Grid...Nuvw = ( 216, 216, 162)
      doing fft...
      coot(26854) malloc: *** error for object 0x97ffe00: incorrect checksum for freed object - 
      object was probably modified after being freed, break at szone_error to debug
      coot(26854) malloc: *** set a breakpoint in szone_error to debug
      
    • System: apple supplied g++ 4.0.1, coot and others
    • Status: under investigation
    • Fix:
      
      
    • Bug: ccp4i package installation fails when updating
    • Effect: Installation proceeds, but the ccp4i package is not installed
    • System: ccp4 6.0 os x packages when upgrading
    • Status: workaround provided
    • Fix: This is due to the change in versioning for ccp4i from 1.30 to 1.4. As this would normally be a downgrade, the os x installer does not perform the task. This can be overcome by deleting /Library/Receipts/ccp4-ccp4i.pkg.
    • Bug: gfortran on mactel
    • Effect: Nice new machine, no fortran
    • System: Tiger
    • Status: Brief instructions and thoughts given
    • Fix: The latest stable version from gnu is gcc 4.0.3 (late Mar 06). This compiles and works reasonably well on a mactel box. 4.1 (late Mar 06) can be tickled into compiling the suite, but has other problems (but shows real promise for fast code).
      You need the following installed in order (read the instructions, and check configure --help):
      1. GMP from http://swox.com/gmp/. I have had success with 4.1.4 compiled with shared libraries disabled (configure --disable-shared. Give 4.2 a whirl, but note the comments about compilers!
      2. MPFR from http://www.mpfr.org/. This should be pointed towards the GMP (configure --with-gmp=...).
      3. gcc from http://gcc.gnu.org. Gfortran is not installed by default so should be enabled (configure --enable-languages=c,c++,f95,java. The gcc configure should be run in a different directory from the source. I installed c and c++ as well, 4.0.3 gave me a working coot, while apple's 4.0.1 didn't.
      For ccp4 itself you will have to play with the optimisation levels, in particular lgglib should be compiled at -O0.
    • Bug: litend function gives wrong result for mactel
    • Effect: byte swapping effects in mosflm and other programs
    • System: Tiger, mactel, gfortran 4.0.3
    • Status: workaround
    • Fix: This is a compiler bug which effects gfortran 4.0.3 at least. Turning off optimization for ccplib.f returns the desired result.
      Note that this seems to be a symptom of a larger problem for gfortran 4.0.3 on mactel, where tests seem to be being removed from inside loops during optimization at -O2. I would suggest, therefore, that -O1 be used throughout.
    • Bug: xlf compiled scala on ppc yields truncated scales file
    • Effect: Truncated output file
    • System: scala compiled using xlf compilers, including CCP4 binaries for 6.0.2 and before
    • Status: Fix in archive, and replacement binary
    • Fix: Make the following change to scala.f and recompile.
      *** scala.f     29 Nov 2006 10:48:12 -0000      1.101.2.4
      --- scala.f     22 Mar 2007 11:40:15 -0000
      ***************
      *** 22428,22433 ****
      --- 22428,22434 ----
        c Print scale factors
              call prtscl
        c
      +       if (ldump) close (unit=lundmp)
        c
              end
        c
      

      For binaries, the scala_ppc ( compiled for g4, but will work on g5) can replace that in /usr/local/ccp4-6.0.2/bin.

    • Bug: xplot84driver fails with bad format error
    • Effect: xplot84driver failure
    • System: mactel, ccp4 distributed binaries and intel compiler compilation
    • Status: workaround
    • Fix: This seems to be a fault with the intel compiler optimizer. The solution is to recompile at -O0. Updated binaries are now available on the downloads page, or to get xplot84-mactel.tar.gz from the ftp site. This tarball contains ccp4-6.0.2/bin/xplot84driver, xloggraph and xccpjiffy2idraw. This update also corrects for the missing libifcore.dylib.
    • Bug: proclean loops forever on mactel
    • Effect: procheck never completes
    • System: mactel, ccp4 distributed binaries and intel compiler compilation
    • Status: workaround and replacement program
    • Fix: This seems to be a fault with the intel compiler optimizer. The solution is to recompile at -O0. An updated binary is available from proclean-mactel.tar.gz from the ftp site. This tarball contains ccp4-6.0.2/bin/proclean.
    • Bug: sudo on leopard does not pick up environment
    • Effect: initial ccp4i setup does not complete successfully
    • System: leopard
    • Status: workaround
    • Fix:
      Yes, that is a general "problem" with sudo, with the latest version
      distributed in OS X.
      
      Briefly, sudo (and I have noticed other programs, like screen) don't
      inherit the environment, so
      
      sudo ccp4i
      
      no longer works.
      
      sudo -s
      
      spawns a root shell.
      
      Then you can source the environment file, and then it will all work.
      
      If this represents a serious problem, you can try the following (at your own risk):
      
      	comment out this line in /etc/sudoers:		Defaults	env_reset
      
      Some sort of reboot/logout might be required for it to go into effect.
      
      (thanks to Bill Scott and Ian Ollmann for the workarounds)
    • Bug: leopard installer deletes old package
    • Effect: old ccp4 installations removed
    • System: leopard when installing a new version of ccp4
    • Status: workaround
    • Fix: It seems that under leopard the installer.app finally has got around to deleting the older version of the installed application. To workaround this the record of the older installation must be removed from /Library/Receipts (see 43 for why the old version cannot be just reinstalled), these will be directories named ccp4-.pkg, eg
           rm -rf ccp4-6.0.2.mpkg
      
    • Bug: Coot crashes when running Refmac
    • Effect: When trying to launch a Refmac job from within Coot the whole program crashes. This is caused by Coot not finding the Refmac executable when it is launched from the icon within the Applications menu on a MAC.
    • Date: 09/01/2009
    • CCP4 Version: 6.1.0 and earlier
    • System: Macintosh
    • Bugzilla number: #3605
    • Status: Workaround
    • Fix: The work around is to add the path to the Coot executable to your $PATH variable in the X11 shell where you run CCP4 from. Make sure the CCP4 setup is sourced, then run Coot from the command line in the shell where CCP4 is set up. This will ensure that Coot can find the Refmac executable.

    • Bug: bad library links
    • Effect: dyld: Library not loaded:
    • Date: 5/2/09
    • CCP4 Version: any
    • System: OS X, recurring
    • Bugzilla: n/a
    • Status: workaround
    • Fix: Despite the best effort of the core teams some errors sneak out. Usually these missing libraries are compiler libraries which were in /usr/local/lib on the build system. The following contains the check. A fix is to add /usr/lib to DYLD_LIBRARY_PATH or, if the developers tools are installed to use install_name_tool -change (example for libstdc++.6.dylib
          $ cd $CCP4_BIN
          $ for file in `ls | grep -v class` ; do otool -L $file | grep -q /usr/local ; if [ $? -eq 0 ]; then echo $file ; otool -L $file | grep local ; fi ; done
          
          $ for file in `ls | grep -v class` ; do install_name_tool -change /usr/local/lib/libstdc++.6.dylib /usr/lib/libstdc++.6.dylib $file ; done
      
      (thanks to Ben Eisenbraun for spotting this)
    • Bug: BALBES_ROOT misset in ccp4.setup-csh
    • Effect: BALBES fails to run, CEXAM not set
    • Date: 08/03/2009
    • CCP4 Version: 6.1.1 pre 08/03/2009
    • System: Macintosh
    • Bugzilla number: #3726
    • Status: Workaround
    • Fix: The work around is to edit $CCP4/bin/ccp4.setup-csh and BALBES_ROOT on line 199 by CEXAM
    • Bug:ERROR could not start run_imosflm couldn't execute "ccp4iwish": no such file or directory
    • Effect: imosflm fails to run from ccp4i
    • Date: 11/03/2009
    • CCP4 Version: 6.1.1 pre 11/03/2009
    • System: OS X
    • Bugzilla number: #3756
    • Status: Workaround
    • Fix: The work around replace ccp4iwish in "System Adminstration"->"Configure Interface" RUN_IMOSFLM line by [GetEnvPath MOSFLM_WISH]
    • Bug:MrBUMP fails to run due to a KeyError
    • Effect: MrBUMP exits with
      KeyError: 'CCP4_BIN'
      
    • Date: 17/03/2009
    • CCP4 Version: 6.1.1 binaries pre 16/03/2009
    • System: OS X
    • Bugzilla number: #3771
    • Status: Workaround
    • Fix: The work around is to add to ccp4.setup-sh
      export CCP4_BIN=${CBIN}
      
      or, to ccp4.setup-csh
      setenv CCP4_BIN ${CBIN}
      
      after the CBIN definitions
    • Bug:CCP4 programs unavailable in coot
    • Effect: unable to run libcheck or refmac
    • Date: 11/06/2010
    • CCP4 Version: any
    • System: OS X
    • Bugzilla number: #4242
    • Status: Workaround
    • Fix: The work around is to add to source the appropriate ccp4.setup-sh before launching coot. I you are using coot.app via double click make the following change to /Applications/coot.app/Contents/Resources/script:
      *** script      2010-06-11 10:26:43.000000000 +0100
      --- script	2010-06-11 10:27:09.000000000 +0100
      ***************
      *** 159,164 ****
      --- 159,165 ----
        GUILE_LOAD_PATH=\
        $COOT_PREFIX/share/guile/1.6:$COOT_PREFIX/share/guile:$COOT_PREFIX/share/guile/gtk-2.0:$COOT_PREFIX/share/guile/gui:$COOT_PREFIX/share/guile/www:$COOT_PREFIX/share/guile/site
        GUILE_WARN_DEPRECATED=no
      + source /Applications/ccp4-6.1.13/bin/ccp4.setup-sh
        
        if [ -n "$LOCAL_GUILE_LOAD_PATH_EXTRAS" ] ; then 
            GUILE_LOAD_PATH=${LOCAL_GUILE_LOAD_PATH_EXTRAS}:$GUILE_LOAD_PATH
      
      using the correct path to the ccp4.setup-sh file.
    • Bug:F_UFMTENDIAN issues with font84.dat
    • Effect: npo and other programs crash on font84.dat read
    • Date: 30/06/2012
    • CCP4 Version: any
    • System: OS X ccp4 binaries
    • Bugzilla number: #4855
    • Status: Workaround
    • Fix: There may be some issues on reading the font84.dat file when the F_UFMTENDIAN environment variable is set to big. The workaround is
      unset F_UFMTENDIAN
      
      in the ccp4.setup files.

      (thanks to William Nicholson)

    • Bug: missing check_zero_res.py
    • Effect: The buccaneer refmac pipeline crashes
    • Date: 20/07/2012
    • CCP4 Version: 6.3.0, pre 21/07/12
    • System: OS X ccp4 binaries
    • Bugzilla number: #4873
    • Status: Workaround
    • Fix: The file exists in the distribution, but needs to be in $CCP4/bin
      cp $CCP4/share/ccp4i/bin/check_zero_res.py $CCP4/bin/check_zero_res.py
      

      (thanks to Raj Pannu)