26-Oct-2009 novatest01 log

26-Feb-2010, KAB

I added some symbolic links for variations of the thread library without the variant in the name.

I'm guessing that the Boost build procedure doesn't create them by default since a threading library is, obviously, multi-threaded. We noticed that libboost_thread.a and were not part of the Boost UPS product while trying to compile the message facility code and the wrong libboost_thread was being used. This would probably be a problem for any package that simply specifies libboost-thread, though. (Recall that our SRT environment uses -lboost_thread-mt-d.)

The steps used to do this were the following:
  • ksu to the products account on novatest01
  • 'cd /fnal/ups/prd/boost/v1_40_0/Linux64bit+2.6-2.5/lib'
  • 'ln -s libboost_thread-mt.a libboost_thread.a'
  • 'ln -s'

26-Oct-2009, KAB

Here are the steps that I used to build and package boost 1.40.0 for UPS/UPD on novatest01:

Note the addition of the "layout" option to the bjam program - this was used to generate libraries without the gcc version in their names.

  • started out working in my personal account...
  • downloaded boost_1_40_0.tar.gz from
  • 'cd <workDir>'
  • 'tar --gunzip -xvf <downloadDir>/boost_1_40_0.tar.gz'
  • 'cd boost_1_40_0'
  • 'mkdir build'
  • './ --libdir=<workDir>/boost_1_40_0/build/lib --includedir=<workDir>/boost_1_40_0/build/include'
  • './bjam --build-type=complete --layout=tagged install'
  • switched to the products account...
  • 'mkdir /fnal/ups/prd/boost' # if needed
  • 'mkdir /fnal/ups/prd/boost/v1_40_0' # if needed
  • 'mkdir /fnal/ups/prd/boost/v1_40_0/Linux64bit+2.6-2.5'
  • 'cd /fnal/ups/prd/boost/v1_40_0/Linux64bit+2.6-2.5'
  • 'mkdir ups'
  • created boost.table file in ups subdirectory. (Could steal this from an earlier release, if available.)
  • 'cp -pRv <workDir>/boost_1_40_0/build/* .'
  • 'ups declare -c -f Linux64bit+2.6-2.5 -r /fnal/ups/prd/boost/v1_40_0/Linux64bit+2.6-2.5 -m boost.table boost v1_40_0'