Project

General

Profile

Instructions for cross-compiling Boost 1420 for PPC

  • First set up the ups products area
    • ksu products
    • cd /fnal/ups/prd/boost/
    • mkdir v1_42_0
    • cd v1_42_0
    • mkdir LinuxPPC-GCC_4_1_0
    • cd LinuxPPC-GCC_4_1_0
    • mkdir ups
    • cd ups
    • (create the boost.table)
  • Build a cross-compiled version of Boost
    • cd /sratch/products/install
    • cd boost
    • Download boost_1_42_0.tar.gz
    • tar -zxvf boost_1_42_0.tar.gz
    • cd boost_1_42_0/tools/build/v2
    • cp user-config.jam user-config.jam.x86
    • edit user-config.jam to add the line:
      using gcc : ppc : /fnal/ups/prd/nova_crosscompiler/v4_1_0-2_3_6/bin/powerpc-603-linux-gnu-gcc ;
    • export BOOST_BUILD_PATH=/scratch/products/install/boost_1_42_0/tools/build/v2
      (this is just to make the user-config.jam visible, maybe not necessary)
    • setup nova_crosscompiler -q powerpc-603
    • cd /scratch/products/install/boost/boost_1_42_0/
    • ./bootstrap.sh --prefix=/fnal/ups/prd/boost/v1_42_0/LinuxPPC-GCC_4_1_0
    • ./bjam toolset=gcc-ppc --build-type=complete --layout=tagged install --debug-configuration >& bjam.log &
      (This didn't completely succeed but many key libs did build. See the bjam.log file for details.)
  • Declare the product
    • cd /fnal/ups/prd/boost/v1_42_0/LinuxPPC-GCC_4_1_0
    • ups declare -c -f LinuxPPC -q GCC_4_1_0 -r /fnal/ups/prd/boost/v1_42_0/LinuxPPC-GCC_4_1_0 -m boost.table boost v1_42_0