Hi,
I compiled the current root version 4.00/06(a) on Mac OS X. I
encountered three problems.
(1) On Mac OS X 10.3.4 the dynamic library lookup produces errors on
the first attempt. It succeeds on the 2nd attempt:
root [0] TDatabasePDG pdg
dlopen error: dlcompat: dyld: /sw/bin/root.exe Undefined symbols:
_hepevt_
Load Error: Failed to load Dynamic link library /sw/lib/root/libEG.so
Error in <TCint::AutoLoadCallback>: failure loading library libEG.so
for class TDatabasePDG
*** Interpreter error recovered ***
root [1] TDatabasePDG pdg
root [2] TMCParticle part
dlopen error: dlcompat: dyld: /sw/bin/root.exe Undefined symbols:
__ZN10TGenerator11ShowMembersER16TMemberInspectorPc
__ZN10TGenerator12ExecuteEventEiii
__ZN10TGenerator12SetViewRangeEffffff
__ZN10TGenerator13SetViewRadiusEf
__ZN10TGenerator19DistancetoPrimitiveEi
Load Error: Failed to load Dynamic link library
/sw/lib/root/libEGPythia.so
Error in <TCint::AutoLoadCallback>: failure loading library
libEGPythia.so for class TMCParticle
*** Interpreter error recovered ***
root [3] TMCParticle part
(The libraries exist at the specified locations.)
(2) I tried to build root 4.00/06(a) also on Mac OS X 10.2.8, but it
fails when trying to create the map file. It is reproducible on the
command line:
$> bin/rlibmap -r etc/system.rootmap -l lib/libMatrix.dylib \
-d -c matrix/inc/LinkDef.h
rlibmap: error unlocking output file
Using '-o' instead of '-r' doesn't produce the error.
(3) A minor issue. The build/unix/makelib.sh produces errors on Mac OS
X 10.2.8 because 'sw_vers' ignores the option '-productVersion'. Not
much harm is done because all if statements which fail due the wrong
formed conditional should fail anyhow. Here a patch which produces the
correct result for both OS X version:
--- root/build/unix/makelib.sh Fri Mar 26 07:35:42 2004
+++ root.new/build/unix/makelib.sh Wed Jun 9 17:19:04 2004
@@ -75,7 +75,7 @@
echo $LD $SOFLAGS$SONAME.$MAJOR.$MINOR $LDFLAGS -o
$LIB.$MAJOR.$MINOR `lorder $OBJS | tsort -q` $EXTRA $EXPLLNKCORE
$LD $SOFLAGS$SONAME.$MAJOR.$MINOR $LDFLAGS -o $LIB.$MAJOR.$MINOR
`lorder $OBJS | tsort -q` $EXTRA $EXPLLNKCORE
elif [ $PLATFORM = "macosx" ]; then
- macosx_minor=`sw_vers -productVersion | cut -d'.' -f2`
+ macosx_minor=`sw_vers | sed -n
's/ProductVersion:[[:blank:]]*[0-9]*.\([0-9]*\).[0-9]*/\1/p'`
# Look for a fink installation
FINKDIR=`which fink 2>&1 | sed -ne "s/\/bin\/fink//p"`
if [ $macosx_minor -ge 3 ]; then
Cheers,
Remi
---------------------------------------------------------------------
Failure is not an option.
It comes bundled with your Microsoft product. (Ferenc Mantfeld)
*********************************************************************
Remigius K. Mommsen e-mail: mommsen@slac.stanford.edu
University of California, Irvine URL: http://cern.ch/mommsen
c/o SLAC voice: ++1 (650) 926-3595
2575 Sand Hill Road #35 fax: ++1 (650) 926-3882
Menlo Park, CA 94025, US home: ++1 (650) 233-9041
*********************************************************************
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:08 MET