|
[Rivet] rivet2 installation on Mac MavericksAndy Buckley andy.buckley at cern.chSun May 11 00:51:06 BST 2014
On 09/05/14 09:01, Hannes Jung wrote: > Dear Andy > > thanks a lot for your reply and help. > > Yes, libRivet is included in the lib: > ~/jung/cvs/rivet2> ls -l lib/libRivet.* > -rwxr-xr-x 1 jung 49 1798480 7. Mai 23:03 lib/libRivet.dylib > -rwxr-xr-x 1 jung 49 1415 7. Mai 23:03 lib/libRivet.la > > Attached is the output of running your new sysdebug.sh Hi again Hannes, What about the idea that an old Rivet version's headers might have been picked up when building the Python module? Is that possible? Could you do a clean-out of your install area so that definitely won't happen? Unfortunately the symbol reported below as missing by the Python module loader has a format that my Linux/GCC c++filt program is unable to decode. It's obviously something like Rivet::AnalysisLoader::getAnalysis(const string&) but the details matter. That particular signature is definitely there in my libRivet.so: andy at duality$ nm -C ~/heplocal/lib/libRivet.so | grep getAnalysis 000000000006d830 T Rivet::AnalysisLoader::getAnalysis(std::string const&) ... (The T means it's an implementation, not just a reference to one.) Maybe you could try that nm command on your installed lib/libRivet.dylib, Hannes? Also try *without* the -C so we can directly compare the mangled symbol names. Sorry to give you more things to try, but I don't yet know what could be going on! It's also good to check that your dynamic loader (with rivetenv.sh sourced, etc.) is able to resolve the libRivet library: andy at duality$ ldd ~/heplocal/lib/python2.7/site-packages/rivet/core.so linux-vdso.so.1 => (0x00007fff9c7e3000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f4c725a1000) libHepMC.so.4 => /home/andy/heplocal/lib/libHepMC.so.4 (0x00007f4c7236d000) libRivet.so => /home/andy/heplocal/lib/libRivet.so (0x00007f4c71ff7000) ^^^^^ it finds it I'm sort of grasping at straws here: I didn't think we'd changed that getAnalysis function's signature from v1 -> v2, and I don't see an obvious sign (or reason) that the Python loader wouldn't be able to see libRivet.so. But it'd be good to see whether there is a close-but-no-cigar matching to that missing symbol name in your libRivet.so... Andy PS. Riveteers, I note that Hannes' Mac has explicit /usr/bin/python2,3 executables, as do the Ubuntu and SL installations checked by Frank and myself. So unless there are objections I suggest that we move to explicitly invoking "python2" rather than "python" in our Rivet (and YODA) scripts from the next release. > On 08.05.2014, at 17:47, Andy Buckley <andy.buckley at cern.ch> wrote: > >> Hi Hannes, >> >> I realised that my script is not quite complete enough for Macs, and >> have added a couple of extra printouts. Can you try running the newly >> attached one as before, and send the output file? >> >> That import error says the Python module has compiled expecting some >> symbol which is then not found at load time. There are two possible >> reasons for that: a) the libRivet.so/dylib library is not being found in >> your DYLD_LIBRARY_PATH (but I *think* you would get a worse error from >> that), or b) the Python module compilation accidentally picked up the >> Rivet1 headers and hence expected old versions of some functions to >> still exist. Is the latter a possibility? And is libRivet located in >> your jung/cvs/rivet2/lib directory? >> >> By the way, I notice from the sysdebug output that you have a private >> installation of g++ in your home directory. It's probably not binary >> compatible with clang++ so be careful! Fortunately it looks like your >> Python and clang installations are compatible, so you probably don't >> need to worry about that CFLAGS, CPPFLAGS workaround. >> >> Cheers, >> Andy >> >> >> On 08/05/14 11:53, Hannes Jung wrote: >>> Hi Andy >>> >>> thanks a lot for your fast reply: >>> here is what I get: >>> >>> ~/jung/cvs/rivet2> source rivetenv.sh >>> ~/jung/cvs/rivet2> python >>> Python 2.7.5 (default, Aug 25 2013, 00:04:04) >>> [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin >>> Type "help", "copyright", "credits" or "license" for more information. >>>>>> import rivet >>> Traceback (most recent call last): >>> File "<stdin>", line 1, in <module> >>> File "/Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages/rivet/__init__.py", line 12, in <module> >>> from rivet.core import * >>> ImportError: dlopen(/Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages/rivet/core.so, 10): Symbol not found: __ZN5Rivet14AnalysisLoader11getAnalysisERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE >>> Referenced from: /Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages/rivet/core.so >>> Expected in: flat namespace >>> in /Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages/rivet/core.so >>>>>> >>> >>> Attached are the other files >>> >>> thanks a lot >>> Cheers >>> Hannes >>> >>> >>> >>> >>> >>> >>> On 08.05.2014, at 11:45, Andy Buckley <andy.buckley at cern.ch> wrote: >>> >>>> Hi Hannes, >>>> >>>> Can you try opening a Python session (just run "python") and then try >>>> "import rivet" and send us the output? That might help us to understand >>>> what is happening in detail, since the error message you are getting is >>>> a sanitised version that we write out when we detect an import error. >>>> >>>> I've attached a script to run, which will dump out a lot of system >>>> information that could help us: can you run it like "sh sysdebug.sh > >>>> sysdebug.txt" and send us the sysdebug.txt file? It would also help if >>>> you could attach / paste your rivetenv.sh file. >>>> >>>> Hopefully we can get it working for you soon! >>>> >>>> Andy >>>> >>>> >>>> On 08/05/14 07:00, Hannes Jung wrote: >>>>> Dear Rivet experts >>>>> >>>>> was trying to install Rivet2 using the bootstrap >>>>> script on a Mac with Mavericks. >>>>> The installation worked, no errors, but then >>>>> >>>>> ~/jung/cvs/rivet2> >>>>> ~/jung/cvs/rivet2> ls >>>>> bin build include lib rivetenv.csh rivetenv.sh share yodaenv.sh >>>>> ~/jung/cvs/rivet2> source rivetenv.sh >>>>> ~/jung/cvs/rivet2> rivet --help >>>>> The rivet Python module could not be loaded: is your PYTHONPATH set correctly? >>>>> ~/jung/cvs/rivet2> echo $PYTHONPATH >>>>> /Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages:/Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages:/Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages:/Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages:/Users/jung/jung/cvs/rivet2/lib/python2.7/site-packages: >>>>> ~/jung/cvs/rivet2> python --version >>>>> Python 2.7.5 >>>>> >>>>> >>>>> Any idea what is wrong with the PYTHONPATH ? >>>>> >>>>> Thanks a lot >>>>> Cheers >>>>> Hannes >>>>> >>>>> >>>>> >>>>> *********************************************************************** >>>>> Hannes Jung >>>>> Email: Hannes.Jung at desy.de >>>>> mobile :+49 40 8998 93741 >>>>> http://www.desy.de/~jung >>>>> Tel: +49 (0) 40 8998 3741 >>>>> Fax: +49 (0) 40 8994 3741 >>>>> DESY, CMS 01B/02.213 >>>>> Notkestr.85, 22603 Hamburg, FRG >>>>> *********************************************************************** >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Rivet mailing list >>>>> Rivet at projects.hepforge.org >>>>> https://www.hepforge.org/lists/listinfo/rivet >>>>> >>>> >>>> >>>> -- >>>> Dr Andy Buckley, Royal Society University Research Fellow >>>> Particle Physics Expt Group, University of Glasgow / PH Dept, CERN >>>> <sysdebug.sh> >>> >>> *********************************************************************** >>> Hannes Jung >>> Email: Hannes.Jung at desy.de >>> mobile :+49 40 8998 93741 >>> http://www.desy.de/~jung >>> Tel: +49 (0) 40 8998 3741 >>> Fax: +49 (0) 40 8994 3741 >>> DESY, CMS 01B/02.213 >>> Notkestr.85, 22603 Hamburg, FRG >>> *********************************************************************** >>> >>> >>> >>> >>> >> >> >> -- >> Dr Andy Buckley, Royal Society University Research Fellow >> Particle Physics Expt Group, University of Glasgow / PH Dept, CERN > > *********************************************************************** > Hannes Jung > Email: Hannes.Jung at desy.de > mobile :+49 40 8998 93741 > http://www.desy.de/~jung > Tel: +49 (0) 40 8998 3741 > Fax: +49 (0) 40 8994 3741 > DESY, CMS 01B/02.213 > Notkestr.85, 22603 Hamburg, FRG > *********************************************************************** > > > > > -- Dr Andy Buckley, Royal Society University Research Fellow Particle Physics Expt Group, University of Glasgow / PH Dept, CERN
More information about the Rivet mailing list |