Evolving Software

These are my notes on the integration and streamlining of Horae, Demeter, libperlxray, and the Athena User's Guide. These notes cover installation of all these tools on a linux machine or some other kind of unix. (These instructions should also work on Windows for someone brave and knowledgeable enough to properly set up an adequate development environment. But don't expect me to know much about Windows development.) Eventually Carlo Segre will have debian packages for everything on this page. For people on debian based systems, those will probably prove easier to install that following the instructions on this page. Also eventually, I will generate Windows executables for my Windows users. Once this is all working, I intend to tag releases and upload tarballs to my web site and to SourceForge.

I assume that you already have Perl, Subversion, a C compiler (gcc, for instance), and a Fortran compiler (I recommend gfortran on a linux machine) installed on your computer. All these things should be available via your system's package manager.

Note that I have moved from ExtUtils::MakeMaker to Module::Build for my build system for most parts of my software. The semantics are very similar, but the details of the build incantations are somewhat different. This little chart compares the two sets of build commands:



perl Makefile.PL

perl Build.PL



sudo make install

./Build install

Module::Build will be installed when you follow the instructions for installing the many pre-requisites needed by these packages.

The /!\ symbol is used to mark parts of this process that are awkward or broken.

Here are the steps in the order that you should perform them:

New instructions 16 March 2010

To install under unix as a normal user and with all modules installed in your own user space:

  1. svn export http://cars9.uchicago.edu/svn/demeter/trunk demeter

  2. svn export http://cars9.uchicago.edu/svn/libperlxray libperlxray

  3. cd demeter

  4. perl bootstrap_locallib.pl

  5. log out and log in, start a new terminal session, or somehow else enable the line that just got added to the end of your $HOME/.bashrc file

  6. cd ../libperlxray

  7. ./build

  8. cd ../demeter

  9. cpanm http://pdb.sdsc.edu/STAR/STAR-Parser-0.59.tar.gz

  10. perl Build.PL

  11. ./Build

  12. ./Build test

  13. ./Build install

What about getting Wx installed?

This is the current state of things. I am trying to streamline all CPAN-related hassels. CPAN remains time consuming, but it runs almost without interaction using local::lib and the bootstrap script.

I really do want to keep libperlxray separate from demeter. I suspect the solution might be to write a bootstrapping shell script that just bombs through all these steps.

BruceRavel/EvolvingSoftware (last edited 2010-03-16 21:15:33 by BruceRavel)