#135 closed defect (fixed)
Installation problem
Reported by: | Generic User (don't modify these fields) | Owned by: | support@sherpa-mc.de |
---|---|---|---|
Priority: | critical | Milestone: | |
Component: | Unknown | Version: | 1.2.3 |
Keywords: | installation | Cc: | jan.strube@stfc.ac.uk |
Description (last modified by )
I am downloading the tarball and the patches from the front page. Then ./configure --enable-analysis --enable-root --enable-multithread --prefix=Whatever make
make[3]: Entering directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Run' g++ -DHAVE_CONFIG_H -I. -I../.. -I../../ATOOLS/Org -I../.. -I/home/jstrube/local/ROOT_v5.28.00/include -g -O2 -pedantic -Wall -Wno-long-long -MT Sherpa-Main.o -MD -MP -MF .deps/Sherpa-Main.Tpo -c -o Sherpa-Main.o `test -f 'Main.C' || echo './'`Main.C mv -f .deps/Sherpa-Main.Tpo .deps/Sherpa-Main.Po /bin/bash ../../libtool --tag=CXX --mode=link g++ -g -O2 -pedantic -Wall -Wno-long-long -rdynamic -o Sherpa Sherpa-Main.o -L../../SHERPA/Main -lSherpaMain -L/home/jstrube/local/ROOT_v5.28.00/lib -L/home/jstrube/local/ROOT_v5.28.00/lib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lGui -pthread -lm -ldl -rdynamic libtool: link: g++ -g -O2 -pedantic -Wall -Wno-long-long -rdynamic -o .libs/Sherpa Sherpa-Main.o -pthread -rdynamic -L/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Main /home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Main/.libs/libSherpaMain.so -L/home/jstrube/local/ROOT_v5.28.00/lib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lGui -lm -ldl -pthread -Wl,-rpath -Wl,/home/jstrube/local/lib/SHERPA-MC /usr/bin/ld: Sherpa-Main.o: undefined reference to symbol 'ATOOLS::Message::Out() const' /usr/bin/ld: note: 'ATOOLS::Message::Out() const' is defined in DSO /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0 so try adding it to the linker command line /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0: could not read symbols: Invalid operation collect2: ld returned 1 exit status make[3]: *** [Sherpa] Error 1 make[3]: Leaving directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Run' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3' make: *** [all] Error 2
I am fixing this by running the libtool command by hand, adding the requested lib(s). This allows make to complete, but maybe this wasn't a good idea.
/home/jstrube/Downloads/SHERPA-MC-1.2.3/Examples/LEP91> ~/local/bin/Sherpa Run.dat *** buffer overflow detected ***: /home/jstrube/local/bin/Sherpa terminated ======= Backtrace: ========= /lib/libc.so.6(__fortify_fail+0x37)[0x7fe0331fd537] /lib/libc.so.6(+0xfe3f0)[0x7fe0331fc3f0] /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0(_ZN6ATOOLS6Random7SetSeedEii+0x34)[0x7fe034114674] /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0(_ZN6ATOOLS6RandomC1Eii+0x26)[0x7fe034116636] /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0(+0x57ba7)[0x7fe034117ba7] /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0(+0x93426)[0x7fe034153426] ======= Memory map: ======== 00400000-00406000 r-xp 00000000 08:03 5236707 /home/jstrube/local/bin/Sherpa 00605000-00606000 r--p 00005000 08:03 5236707 /home/jstrube/local/bin/Sherpa 00606000-00607000 rw-p 00006000 08:03 5236707 /home/jstrube/local/bin/Sherpa 0213c000-0215d000 rw-p 00000000 00:00 0 [heap] 7fe029e7a000-7fe029efb000 r-xp 00000000 08:02 923922 /usr/lib/libfreetype.so.6.6.0 7fe029efb000-7fe02a0fb000 ---p 00081000 08:02 923922 /usr/lib/libfreetype.so.6.6.0 7fe02a0fb000-7fe02a100000 r--p 00081000 08:02 923922 /usr/lib/libfreetype.so.6.6.0 7fe02a100000-7fe02a101000 rw-p 00086000 08:02 923922 /usr/lib/libfreetype.so.6.6.0 7fe02a101000-7fe02a10a000 r-xp 00000000 08:02 555776 /lib/libcrypt-2.12.1.so 7fe02a10a000-7fe02a30a000 ---p 00009000 08:02 555776 /lib/libcrypt-2.12.1.so 7fe02a30a000-7fe02a30b000 r--p 00009000 08:02 555776 /lib/libcrypt-2.12.1.so 7fe02a30b000-7fe02a30c000 rw-p 0000a000 08:02 555776 /lib/libcrypt-2.12.1.so 7fe02a30c000-7fe02a33a000 rw-p 00000000 00:00 0 7fe02a33a000-7fe02a37a000 r-xp 00000000 08:02 525569 /lib/libncurses.so.5.7 7fe02a37a000-7fe02a579000 ---p 00040000 08:02 525569 /lib/libncurses.so.5.7 7fe02a579000-7fe02a57d000 r--p 0003f000 08:02 525569 /lib/libncurses.so.5.7 7fe02a57d000-7fe02a57e000 rw-p 00043000 08:02 525569 /lib/libncurses.so.5.7 7fe02a57e000-7fe02a594000 r-xp 00000000 08:02 525667 /lib/libz.so.1.2.3.4 7fe02a594000-7fe02a794000 ---p 00016000 08:02 525667 /lib/libz.so.1.2.3.4 7fe02a794000-7fe02a795000 r--p 00016000 08:02 525667 /lib/libz.so.1.2.3.4 7fe02a795000-7fe02a796000 rw-p 00017000 08:02 525667 /lib/libz.so.1.2.3.4 7fe02a796000-7fe02a877000 r-xp 00000000 08:02 929739 /usr/lib/libgfortran.so.3.0.0 7fe02a877000-7fe02aa77000 ---p 000e1000 08:02 929739 /usr/lib/libgfortran.so.3.0.0 7fe02aa77000-7fe02aa78000 r--p 000e1000 08:02 929739 /usr/lib/libgfortran.so.3.0.0 7fe02aa78000-7fe02aa79000 rw-p 000e2000 08:02 929739 /usr/lib/libgfortran.so.3.0.0 7fe02aa79000-7fe02aa7a000 rw-p 00000000 00:00 0 7fe02aa7a000-7fe02aaa1000 r-xp 00000000 08:03 7650031 /home/jstrube/local/lib/SHERPA-MC/libExtraXSNLO.so.0.0.0 7fe02aaa1000-7fe02aca1000 ---p 00027000 08:03 7650031 /home/jstrube/local/lib/SHERPA-MC/libExtraXSNLO.so.0.0.0 7fe02aca1000-7fe02aca2000 r--p 00027000 08:03 7650031 /home/jstrube/local/lib/SHERPA-MC/libExtraXSNLO.so.0.0.0 7fe02aca2000-7fe02aca3000 rw-p 00028000 08:03 7650031 /home/jstrube/local/lib/SHERPA-MC/libExtraXSNLO.so.0.0.0 7fe02aca3000-7fe02aca6000 r-xp 00000000 08:03 7650027 /home/jstrube/local/lib/SHERPA-MC/libExtraXSCluster.so.0.0.0 7fe02aca6000-7fe02aea5000 ---p 00003000 08:03 7650027 /home/jstrube/local/lib/SHERPA-MC/libExtraXSCluster.so.0.0.0 7fe02aea5000-7fe02aea6000 r--p 00002000 08:03 7650027 /home/jstrube/local/lib/SHERPA-MC/libExtraXSCluster.so.0.0.0 7fe02aea6000-7fe02aea7000 rw-p 00003000 08:03 7650027 /home/jstrube/local/lib/SHERPA-MC/libExtraXSCluster.so.0.0.0 7fe02aea7000-7fe02aeda000 r-xp 00000000 08:03 7650023 /home/jstrube/local/lib/SHERPA-MC/libExtraXS2_2.so.0.0.0 7fe02aeda000-7fe02b0da000 ---p 00033000 08:03 7650023 /home/jstrube/local/lib/SHERPA-MC/libExtraXS2_2.so.0.0.0 7fe02b0da000-7fe02b0dc000 r--p 00033000 08:03 7650023 /home/jstrube/local/lib/SHERPA-MC/libExtraXS2_2.so.0.0.0 7fe02b0dc000-7fe02b0dd000 rw-p 00035000 08:03 7650023 /home/jstrube/local/lib/SHERPA-MC/libExtraXS2_2.so.0.0.0 7fe02b0dd000-7fe02b0ed000 r-xp 00000000 08:03 7650019 /home/jstrube/local/lib/SHERPA-MC/libExtraXS.so.0.0.0 7fe02b0ed000-7fe02b2ed000 ---p 00010000 08:03 7650019 /home/jstrube/local/lib/SHERPA-MC/libExtraXS.so.0.0.0 7fe02b2ed000-7fe02b2ee000 r--p 00010000 08:03 7650019 /home/jstrube/local/lib/SHERPA-MC/libExtraXS.so.0.0.0 7fe02b2ee000-7fe02b2ef000 rw-p 00011000 08:03 7650019 /home/jstrube/local/lib/SHERPA-MC/libExtraXS.so.0.0.0 7fe02b2ef000-7fe02b32a000 r-xp 00000000 08:03 7329829 /home/jstrube/local/lib/SHERPA-MC/libPhotonsMEs.so.0.0.0 7fe02b32a000-7fe02b529000 ---p 0003b000 08:03 7329829 /home/jstrube/local/lib/SHERPA-MC/libPhotonsMEs.so.0.0.0 7fe02b529000-7fe02b52b000 r--p 0003a000 08:03 7329829 /home/jstrube/local/lib/SHERPA-MC/libPhotonsMEs.so.0.0.0 7fe02b52b000-7fe02b52c000 rw-p 0003c000 08:03 7329829 /home/jstrube/local/lib/SHERPA-MC/libPhotonsMEs.so.0.0.0zsh: abort ~/local/bin/Sherpa Run.dat
Attachments (3)
Change History (18)
Changed 14 years ago by
Attachment: | config.log added |
---|
comment:1 Changed 14 years ago by
The same installation problem occurs also without --multithread Fix: cd SHERPA/Run <copy and paste the command that failed>, adding -lToolsMath -lToolsOrg cd - make make install
Unfortunately, this also leads to the same seg fault, so it's not due to multithread.
comment:2 Changed 14 years ago by
Description: | modified (diff) |
---|---|
Milestone: | → rel-1.3.0 |
Hi Jan,
On which OS is this?
I have not tested the --enable-root
switch in a while (what are you using that for by the way?), so maybe you could also try without that and see whether that's what's causing the issue?
Cheers, Frank
comment:3 Changed 14 years ago by
This is Ubuntu 10.10. I'm trying to use ROOT, because I want to do some very simple analysis for CLiC, trying to use Sherpa to cross-check our whizard results. If you say I can make some simple plots and analysis without ROOT, all the better. I'll try that.
comment:4 Changed 14 years ago by
OK, I re-compiled without --enable-root Not a whole lot of improvement. The compilation problem remains the same. Same fix: adding -l flags by hand. Then, when running the LEP example, a similar problem occurs, see below. Note that I just tested on Scientific Linux 5, the same installation we also use for our ATLAS tests. It works there.
Ubuntu 10.10 traceback follows.
jstrube@heplnw18:/home/jstrube/Downloads/SHERPA-MC-1.2.3/Examples/LEP91> Sherpa -f Run.dat * buffer overflow detected *: Sherpa terminated ======= Backtrace: ========= /lib/libc.so.6(fortify_fail+0x37)[0x7fc264e8c537] /lib/libc.so.6(+0xfe3f0)[0x7fc264e8b3f0] /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0(_ZN6ATOOLS6Random7SetSeedEii+0x34)[0x7fc265b80164] /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0(_ZN6ATOOLS6RandomC1Eii+0x26)[0x7fc265b82116] /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0(+0x56687)[0x7fc265b83687] /home/jstrube/local/lib/SHERPA-MC/libToolsMath.so.0(+0x91e06)[0x7fc265bbee06] ======= Memory map: ======== 00400000-00404000 r-xp 00000000 08:03 5236705 /home/jstrube/local/bin/Sherpa 00603000-00604000 r--p 00003000 08:03 5236705 /home/jstrube/local/bin/Sherpa 00604000-00605000 rw-p 00004000 08:03 5236705 /home/jstrube/local/bin/Sherpa 00d9a000-00dbb000 rw-p 00000000 00:00 0 [heap] 7fc25c22c000-7fc25c22e000 r-xp 00000000 08:02 555789 /lib/libdl-2.12.1.so 7fc25c22e000-7fc25c42e000 ---p 00002000 08:02 555789 /lib/libdl-2.12.1.so 7fc25c42e000-7fc25c42f000 r--p 00002000 08:02 555789 /lib/libdl-2.12.1.so 7fc25c42f000-7fc25c430000 rw-p 00003000 08:02 555789 /lib/libdl-2.12.1.so 7fc25c430000-7fc25c511000 r-xp 00000000 08:02 929739 /usr/lib/libgfortran.so.3.0.0 7fc25c511000-7fc25c711000 ---p 000e1000 08:02 929739 /usr/lib/libgfortran.so.3.0.0 7fc25c711000-7fc25c712000 r--p 000e1000 08:02 929739 /usr/lib/libgfortran.so.3.0.0 7fc25c712000-7fc25c713000 rw-p 000e2000 08:02 929739 /usr/lib/libgfortran.so.3.0.0 7fc25c713000-7fc25c714000 rw-p 00000000 00:00 0 7fc25c714000-7fc25c73b000 r-xp 00000000 08:03 7141100 /home/jstrube/local/lib/SHERPA-MC/libExtraXSNLO.so.0.0.0 7fc25c73b000-7fc25c93b000 ---p 00027000 08:03 7141100 /home/jstrube/local/lib/SHERPA-MC/libExtraXSNLO.so.0.0.0 7fc25c93b000-7fc25c93c000 r--p 00027000 08:03 7141100 /home/jstrube/local/lib/SHERPA-MC/libExtraXSNLO.so.0.0.0 7fc25c93c000-7fc25c93d000 rw-p 00028000 08:03 7141100 /home/jstrube/local/lib/SHERPA-MC/libExtraXSNLO.so.0.0.0 7fc25c93d000-7fc25c940000 r-xp 00000000 08:03 7141096 /home/jstrube/local/lib/SHERPA-MC/libExtraXSCluster.so.0.0.0 7fc25c940000-7fc25cb3f000 ---p 00003000 08:03 7141096 /home/jstrube/local/lib/SHERPA-MC/libExtraXSCluster.so.0.0.0 7fc25cb3f000-7fc25cb40000 r--p 00002000 08:03 7141096 /home/jstrube/local/lib/SHERPA-MC/libExtraXSCluster.so.0.0.0 7fc25cb40000-7fc25cb41000 rw-p 00003000 08:03 7141096 /home/jstrube/local/lib/SHERPA-MC/libExtraXSCluster.so.0.0.0 7fc25cb41000-7fc25cb74000 r-xp 00000000 08:03 7141092 /home/jstrube/local/lib/SHERPA-MC/libExtraXS2_2.so.0.0.0 7fc25cb74000-7fc25cd74000 ---p 00033000 08:03 7141092 /home/jstrube/local/lib/SHERPA-MC/libExtraXS2_2.so.0.0.0 7fc25cd74000-7fc25cd76000 r--p 00033000 08:03 7141092 /home/jstrube/local/lib/SHERPA-MC/libExtraXS2_2.so.0.0.0 7fc25cd76000-7fc25cd77000 rw-p 00035000 08:03 7141092 /home/jstrube/local/lib/SHERPA-MC/libExtraXS2_2.so.0.0.0 7fc25cd77000-7fc25cd87000 r-xp 00000000 08:03 7141088 /home/jstrube/local/lib/SHERPA-MC/libExtraXS.so.0.0.0 7fc25cd87000-7fc25cf87000 ---p 00010000 08:03 7141088 /home/jstrube/local/lib/SHERPA-MC/libExtraXS.so.0.0.0 7fc25cf87000-7fc25cf88000 r--p 00010000 08:03 7141088 /home/jstrube/local/lib/SHERPA-MC/libExtraXS.so.0.0.0 7fc25cf88000-7fc25cf89000 rw-p 00011000 08:03 7141088 /home/jstrube/local/lib/SHERPA-MC/libExtraXS.so.0.0.0 7fc25cf89000-7fc25cfc4000 r-xp 00000000 08:03 7650058 /home/jstrube/local/lib/SHERPA-MC/libPhotonsMEs.so.0.0.0 7fc25cfc4000-7fc25d1c3000 ---p 0003b000 08:03 7650058 /home/jstrube/local/lib/SHERPA-MC/libPhotonsMEs.so.0.0.0 7fc25d1c3000-7fc25d1c5000 r--p 0003a000 08:03 7650058 /home/jstrube/local/lib/SHERPA-MC/libPhotonsMEs.so.0.0.0 7fc25d1c5000-7fc25d1c6000 rw-p 0003c000 08:03 7650058 /home/jstrube/local/lib/SHERPA-MC/libPhotonsMEs.so.0.0.0 7fc25d1c6000-7fc25d1cb000 r-xp 00000000 08:03 7650062 /home/jstrube/local/lib/SHERPA-MC/libPhotonsPhaseSpace.so.0.0.0 7fc25d1cb000-7fc25d3cb000 ---p 00005000 08:03 7650062 /home/jstrube/local/lib/SHERPA-MC/libPhotonsPhaseSpace.so.0.0.0 7fc25d3cb000-7fc25d3cc000 r--p 00005000 08:03 7650062 /home/jstrube/local/lib/SHERPA-MC/libPhotonsPhaseSpace.so.0.0.0 7fc25d3cc000-7fc25d3cd000 rw-p 00006000 08:03 7650062 /home/jstrube/local/lib/SHERPA-MC/libPhotonsPhaseSpace.so.0.0.0 7fc25d3cd000-7fc25d3e9000 r-xp 00000000 08:03 7650054 /home/jstrube/local/lib/SHERPA-MC/libPhotonsTools.so.0.0.0 7fc25d3e9000-7fc25d5e9000 ---p 0001c000 08:03 7650054 /home/jstrube/local/lib/SHERPA-MC/libPhotonsTools.so.0.0.0zsh: abort Sherpa -f Run.dat
Changed 14 years ago by
Attachment: | msg_include_1.patch added |
---|
comment:5 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Hi Jan,
can you try whether the attached patch solves your problem? This bug will be fixed in the new version, 1.3.0, which will be out next week.
Cheers
Stefan
comment:6 Changed 14 years ago by
Resolution: | fixed |
---|---|
Status: | closed → reopened |
This still doesn't work for me. patching the file, then gmake clean && gmake ...
Entering directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Run'
g++ -DHAVE_CONFIG_H -I. -I../.. -I../../ATOOLS/Org -I../.. -g -O2 -pedantic -Wall -MT Sherpa-Main.o -MD -MP -MF .deps/Sherpa-Main.Tpo -c -o Sherpa-Main.o test -f 'Main.C' || echo './'
Main.C
mv -f .deps/Sherpa-Main.Tpo .deps/Sherpa-Main.Po
/bin/bash ../../libtool --tag=CXX --mode=link g++ -g -O2 -pedantic -Wall -rdynamic -o Sherpa Sherpa-Main.o -L../../SHERPA/Main -lSherpaMain
libtool: link: g++ -g -O2 -pedantic -Wall -rdynamic -o .libs/Sherpa Sherpa-Main.o -L/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Main /home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Main/.libs/libSherpaMain.so -Wl,-rpath -Wl,/home/jstrube/local/lib/SHERPA-MC
/usr/bin/ld: Sherpa-Main.o: undefined reference to symbol 'ATOOLS::Message::LevelIsEvents(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
/usr/bin/ld: note: 'ATOOLS::Message::LevelIsEvents(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' is defined in DSO home/jstrube/Downloads/SHERPA-MC-1.2.3/ATOOLS/Org/.libs/libToolsOrg.so.0 so try adding it to the linker command line
home/jstrube/Downloads/SHERPA-MC-1.2.3/ATOOLS/Org/.libs/libToolsOrg.so.0: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[3]: * [Sherpa] Error 1
make[3]: Leaving directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Run'
make[2]: * [all-recursive] Error 1
make[2]: Leaving directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA'
make[1]: * [all-recursive] Error 1
make[1]: Leaving directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3'
make: * [all] Error 2
comment:7 Changed 14 years ago by
could you please try
make clean make install
in the top level directory?
comment:8 Changed 14 years ago by
nope, same problem.
Does this work for you on Ubuntu? Are you using gcc 4.4 or 4.5? Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.5.1/lto-wrapper Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.5.1-7ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-4.5/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.5 --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.5 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-plugin --enable-gold --with-plugin-ld=ld.gold --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 4.5.1 (Ubuntu/Linaro 4.5.1-7ubuntu2)
make[2]: Entering directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Run'
g++ -DHAVE_CONFIG_H -I. -I../.. -I../../ATOOLS/Org -I../.. -g -O2 -pedantic -Wall -MT Sherpa-Main.o -MD -MP -MF .deps/Sherpa-Main.Tpo -c -o Sherpa-Main.o test -f 'Main.C' || echo './'
Main.C
mv -f .deps/Sherpa-Main.Tpo .deps/Sherpa-Main.Po
/bin/bash ../../libtool --tag=CXX --mode=link g++ -g -O2 -pedantic -Wall -rdynamic -o Sherpa Sherpa-Main.o -L../../SHERPA/Main -lSherpaMain
libtool: link: g++ -g -O2 -pedantic -Wall -rdynamic -o .libs/Sherpa Sherpa-Main.o -L/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Main /home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Main/.libs/libSherpaMain.so -Wl,-rpath -Wl,/home/jstrube/local/lib/SHERPA-MC
/usr/bin/ld: Sherpa-Main.o: undefined reference to symbol 'ATOOLS::Message::LevelIsEvents(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
/usr/bin/ld: note: 'ATOOLS::Message::LevelIsEvents(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' is defined in DSO /home/jstrube/local/lib/SHERPA-MC/libToolsOrg.so.0 so try adding it to the linker command line
/home/jstrube/local/lib/SHERPA-MC/libToolsOrg.so.0: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[2]: * [Sherpa] Error 1
make[2]: Leaving directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA/Run'
make[1]: * [install-recursive] Error 1
make[1]: Leaving directory `/home/jstrube/Downloads/SHERPA-MC-1.2.3/SHERPA'
make: * [install-recursive] Error 1
comment:9 Changed 14 years ago by
sorry the first part was gcc -v The second part was the error message
comment:10 Changed 14 years ago by
It works for me on KUbuntu Lucid, but the unpatched version also compiled on Maverick. As far as I know, at least two other Sherpas use Maverick, and it works for them. My gcc is 4.4.3. We'll check what happens with 4.5.
comment:11 Changed 14 years ago by
I can reproduce this problem with g++ 4.5, and actually there seem to be two problems:
- The linking failure seems to be related to a change in Ubuntu with respect to resolving symbols from indirectly linked shared libraries: https://lists.ubuntu.com/archives/ubuntu-devel-announce/2010-October/000772.html . In our case, the Sherpa executable is linked with libSherpaMain.so which then links all the other libraries, from which the symbols don't get resolved automatically anymore. This can be fixed by explicitely linking with the necessary libraries in
SHERPA/Run/Makefile.am
as follows:Index: SHERPA/Run/Makefile.am =================================================================== --- SHERPA/Run/Makefile.am (revision 17360) +++ SHERPA/Run/Makefile.am (working copy) @@ -15,7 +15,7 @@ Sherpa@VERSIONING@_LDADD = -L@SHERPABUILDDIR@/Main -lSherpaMain \ $(HZTOOLLIBS) \ - @CONDITIONAL_HEPMC2LIBS@ + @CONDITIONAL_HEPMC2LIBS@ @ATOOLSLIBS@ Sherpa@VERSIONING@_LDFLAGS = @ldflags@
- Once this is fixed there is still the run time crash which seems to come from
ATOOLS::Random::SetSeed
. I don't have a solution for that yet.
comment:12 Changed 14 years ago by
I have no gcc 4.5 to check this, but could 2. be due to line 387 in Random.C ?
strcpy(status.idTag, "Rnd4_G_Marsaglia");
These are 16 characters plus the mandatory terminating null character (see http://www.cplusplus.com/reference/clibrary/cstring/strcpy/), i.e. 17 total, but the declaration of status says
char idTag[16];
comment:13 Changed 14 years ago by
I have changed this on trunk r17368 (patch attached), which will break backwards compatibility with old random seed files. However, as the result of this strcopy is (strictly speaking) undefined, this would happen one way or the other. Note that on most systems this issue will probably not even generate an error, as the status struct holds enough space to accomodate the extra termination character and this bit gets overwritten later. That is, if it is aligned as declared, maybe this is not what gcc 4.5 will do.
For Sherpa v1.2.3, could you please try to apply the attached patch strcpy_random_1.patch and check whether that solves the problem? Thanks
Changed 14 years ago by
Attachment: | strcpy_random_1.patch added |
---|
comment:14 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
Great, this works for me! So with both the patch that I mentioned in my comment above and Stefan's patch it will hopefully work for you as well. I'm closing this report, please re-open if you find it still doesn't work.
config log, system description