[Halld-offline] hdgeant still broken on 64-bit OS X systems?
Matthew Shepherd
mashephe at indiana.edu
Sun Dec 16 09:00:16 EST 2012
Hi all,
I upgraded my MacBook recently to latest version of OS X. I was able to get the full GlueX source to compile with a little work. Basic details:
Install command line tools from "Preferences" in Xcode
Install fink
use fink to install cernlib and geant3
set /cern/pro to point to /sw (can probably change env also, but this is standard path)
inside of /sw/lib set these symlinks:
libgcc_s.dylib -> gcc4.7/lib/libgcc_s.1.dylib
libgfortran.a -> gcc4.7/lib/libgfortran.a
libquadmath.a -> gcc4.7/lib/libquadmath.a
I then updated everything and did a fresh build.
Now when I run hdgeant I get the following message:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
LOCB/LOCF: address 0x7fff5074435c exceeds the 32 bit address space
or is not in the data segments
This may result in program crash or incorrect results
Therefore we will stop here
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
While I don't understand it, it seems to be an artifact of trying to run a 64-bit version of hdgeant. Is there a way to fix this? Do we know if the problem is in our code or in cernlib?
I'm just using cernlib provided by fink. There is some discussion of patching an recompiling cernlib here:
http://www-jlc.kek.jp/~fujiik/macosx/10.7.X/HEPonX/memo/CERNLIBonX.html
However, the author seems to imply that the fink distributions have the patches applied. I have not tried to patch and compile my own copy of cernlib.
It is probably not worth a major development effort to fix this. I just thought if someone knew of a trival fix, I could do it. After all, I've been running hdgeant elsewhere and copying files to my laptop for years now.
Matt
More information about the Halld-offline
mailing list