|
Boost-Build : |
From: Aydin Buluc (aydin_at_[hidden])
Date: 2007-05-22 03:05:33
Hi Douglas,
Thanks for the pointer but that doesn't help me much. I guess setting up the
library paths are not enough, I have to inform about the include path also
since the complaints was basically "unable to find mpi.h"
Along the way, here is the mpCC_r script of IBM (this is the thread safe, 64
bit version, mpCC is almost similar without the "_r" suffix in the
libraries ):
#!/bin/ksh
# IBM_PROLOG_BEGIN_TAG
# This is an automatically generated prolog.
#
#
#
# Licensed Materials - Property of IBM
#
# (C) COPYRIGHT International Business Machines Corp. 1996,2004
# All Rights Reserved
#
# US Government Users Restricted Rights - Use, duplication or
# disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
#
# IBM_PROLOG_END_TAG
# 5765-D93 (C) COPYRIGHT IBM CORP 1996,1999
# All Rights Reserved
# Licensed Materials - Property of IBM
#
# US Government Users Restricted Rights - Use, duplication or disclosure
# restricted by GSA ADP Schedule Contract with IBM Corp.
#
# set -o verbose
# If MP_PREFIX is unset or null, _BASE evaluates to /usr/lpp/ppe.poe
# If MP_PREFIX is set, _BASE evaluates to $MP_PREFIX/ppe.poe
# If called with no arguments, echo a syntax summary
if [ $# -eq 0 ]
then
# Display the man pages
if [ -r /usr/man/cat1/mpCC_r.1 ]
then
/usr/bin/more -c /usr/man/cat1/mpCC_r.1
else
echo "No help available for command mpCC_r"
fi
exit 1
fi
# Support for PE Benchmarker tracing is as follows:
#
# - If the MP_UTE flag is set to "YES", then we look for the presence of
# the library /usr/lpp/ppe.perf/lib/libute_r.a. If this library is
# present, then we add the following linker options:
#
"-lute_r -L/usr/lpp/ppe.perf/lib -bE:/usr/lpp/ppe.perf/lib/libute_r.exp".
# If the MP_UTE flag is set but the UTE library is not present we do
# nothing.
typeset -u MP_UTE=$MP_UTE
if [[ "$MP_UTE" = "YES" ]]
then
if [[ -f /usr/lpp/ppe.perf/lib/libute_r.a ]] &&
[[ -f /usr/lpp/ppe.perf/lib/libute_r.exp ]]
then
_USE_UTE="YES"
else
echo "PE Benchmarker library not found"
echo
fi
fi
_BASE=${MP_PREFIX:-/usr/lpp}/ppe.poe
_LIBROOT=$_BASE/lib
_LIBR="-L$_LIBROOT "
_LIBD="-L$_LIBROOT/ip"
_LIB_THREADS="-L$_LIBROOT/threads"
_LIB="$_LIB_THREADS $_LIBR $_LIBD"
_INCLUDE=$_BASE/include
_STANZA=xlC_r
# Instead of using POE config file, put all options on command line
_FLAGS="-I$_INCLUDE -binitfini:poe_remote_main -lmpi_r -lvtd_r"
_LAPI_BASE=${MP_PREFIX:-/opt}/rsct/lapi
_LAPI_INCDIR=$_LAPI_BASE/include
_LAPI_LIBDIR=$_LAPI_BASE/lib
_LAPI_LINK=/usr/lib/liblapi_r.a
#
# If the LAPI library exists on this machine as a symbolic
# link from /usr/lib, assume LAPI is installed and go ahead
# add the appropriate LAPI compile flags.
#
if [ -L $_LAPI_LINK ]
then
#
# Since the LAPI library will be linked to /usr/lib,
# no -L flag is required here for successful compilation.
# Also, the flag isn't needed to ensure that the loader
# finds the library at runtime since the /usr/lib link exists.
#
_FLAGS="$_FLAGS -I$_LAPI_INCDIR -llapi_r"
#
# If the css_shared.h header file does not exist in /usr/include,
# pick up the one LAPI ships.
#
if [ ! -r /usr/include/css_shared.h ]
then
_FLAGS="$_FLAGS -I$_LAPI_BASE/dev/include"
fi
fi
_ENTRY_FLAG=
_D7_COMPAT=
opts=
args=$#
while [ $args -gt 0 ]
do
param=$1
shift
args=`expr $args - 1`
case $param in
#
#
*\'*) opts="$opts \"$param\"" ;;
*\ *|*\"*) opts="$opts '$param'" ;;
-v) _FLAGS="$_FLAGS $param " ; MP_VERBOSE=YES ;;
-d7) _D7_COMPAT=YES ;;
-cpp) _FLAGS="$_FLAGS -D_MPI_CPP_BINDINGS " ;;
*) opts="$opts $param " ;;
esac
done
# Check for POSIX Threads Draft 7 Compatibility. If programs are
# to be compiled with pthreads Draft 7, include the draft 7 MPI
# and LAPI (if found) libraries, and use the pthreads compatibility
# library.
if [ "$_D7_COMPAT" = "YES" ]; then
_FLAGS="$_FLAGS -lpthreads_compat"
fi
_FLAGS="$_FLAGS -lpthreads"
# Add UTE lib if necessary
if [[ "$_USE_UTE" = "YES" ]]; then
_FLAGS="-lute_r -L/usr/lpp/ppe.perf/lib -bE:/usr/lpp/ppe.perf/lib/libute_r.exp
$_FLAGS"
fi
if [ "$MP_VERBOSE" = "YES" ]; then
echo xlC_r $opts $_FLAGS $_LIB
fi
eval "xlC_r $opts $_FLAGS $_LIB"
rc=$?
exit $rc
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk