whizard is hosted by Hepforge, IPPP Durham

Opened 10 years ago

Closed 10 years ago

#675 closed defect (fixed)

HepMC format incomplete

Reported by: Juergen Reuter Owned by: kilian
Priority: P0 Milestone: v2.2.3
Component: core Version: 2.2.2
Severity: critical Keywords:
Cc:

Description

Reported by Carsten Bittrich. Entries for event scale, alpha qcd, event number missing. I will attach the relevant files a.s.a.p.

Attachments (1)

hepmcwritertest.tar.gz (13.8 KB) - added by Juergen Reuter 10 years ago.
Tetst case from Carsten Bittrich.

Download all attachments as: .zip

Change History (12)

comment:1 Changed 10 years ago by kilian

Status: newassigned

@JR: You promised to attach files to this ticket, ...?

Changed 10 years ago by Juergen Reuter

Attachment: hepmcwritertest.tar.gz added

Tetst case from Carsten Bittrich.

comment:2 Changed 10 years ago by Juergen Reuter

Here is what Carsten sent us.

comment:3 Changed 10 years ago by kilian

Resolution: fixed
Status: assignedclosed

Fixed in r6108.

comment:4 Changed 10 years ago by Juergen Reuter

Resolution: fixed
Status: closedreopened

Triggers errors in compilation with gcc/g++ 4.9.1 on MAC OS X:

$ m hepmc_6.run
g++ ../../tests/hepmc_6_rd.cpp -g -O2   -lHepMC -Wl,-rpath  -o hepmc_6_rd
Undefined symbols for architecture x86_64:
  "std::ctype<char>::_M_widen_init() const", referenced from:
      read_event_file()     in cchg7YEh.o
      HepMC::IO_BaseClass::print(std::basic_ostream<char, std::char_traits<char> >&) const in cchg7YEh.o
  "std::basic_ostream<char, std::char_traits<char> >::put(char)", referenced from:
      read_event_file()     in cchg7YEh.o
      HepMC::IO_BaseClass::print(std::basic_ostream<char, std::char_traits<char> >&) const in cchg7YEh.o
  "std::basic_ostream<char, std::char_traits<char> >::flush()", referenced from:
      read_event_file()     in cchg7YEh.o
      HepMC::IO_BaseClass::print(std::basic_ostream<char, std::char_traits<char> >&) const in cchg7YEh.o
  "std::basic_ostream<char, std::char_traits<char> >& std::basic_ostream<char, std::char_traits<char> >::_M_insert<double>(double)", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_ostream<char, std::char_traits<char> >::operator<<(int)", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_M_destroy(std::allocator<char> const&)", referenced from:
      std::_Rb_tree<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long>, std::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >*) in cchg7YEh.o
  "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_Rep::_S_empty_rep_storage", referenced from:
      std::_Rb_tree<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long>, std::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >*) in cchg7YEh.o
  "std::__basic_file<char>::~__basic_file()", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_filebuf<char, std::char_traits<char> >::open(char const*, std::_Ios_Openmode)", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_filebuf<char, std::char_traits<char> >::close()", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_filebuf<char, std::char_traits<char> >::basic_filebuf()", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_filebuf<char, std::char_traits<char> >::~basic_filebuf()", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream()", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::locale::~locale()", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::ios_base::Init::Init()", referenced from:
      __GLOBAL__sub_I_hepmc_6_rd.cpp in cchg7YEh.o
  "std::ios_base::Init::~Init()", referenced from:
      __GLOBAL__sub_I_hepmc_6_rd.cpp in cchg7YEh.o
  "std::ios_base::ios_base()", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::ios_base::~ios_base()", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_ios<char, std::char_traits<char> >::clear(std::_Ios_Iostate)", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)", referenced from:
      read_event_file()     in cchg7YEh.o
      HepMC::IO_BaseClass::print(std::basic_ostream<char, std::char_traits<char> >&) const in cchg7YEh.o
  "std::__throw_bad_cast()", referenced from:
      read_event_file()     in cchg7YEh.o
      HepMC::IO_BaseClass::print(std::basic_ostream<char, std::char_traits<char> >&) const in cchg7YEh.o
  "std::cerr", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::cout", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)", referenced from:
      read_event_file()     in cchg7YEh.o
  "std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)", referenced from:
      read_event_file()     in cchg7YEh.o
  "VTT for std::basic_ifstream<char, std::char_traits<char> >", referenced from:
      read_event_file()     in cchg7YEh.o
  "vtable for __cxxabiv1::__class_type_info", referenced from:
      typeinfo for HepMC::IO_BaseClass in cchg7YEh.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for std::basic_filebuf<char, std::char_traits<char> >", referenced from:
      read_event_file()     in cchg7YEh.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for std::basic_ifstream<char, std::char_traits<char> >", referenced from:
      read_event_file()     in cchg7YEh.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for std::basic_streambuf<char, std::char_traits<char> >", referenced from:
      read_event_file()     in cchg7YEh.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for std::basic_ios<char, std::char_traits<char> >", referenced from:
      read_event_file()     in cchg7YEh.o
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "operator delete(void*)", referenced from:
      read_event_file()     in cchg7YEh.o
      std::_Rb_tree<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long>, std::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unsigned long> >*) in cchg7YEh.o
      HepMC::WeightContainer::~WeightContainer() in cchg7YEh.o
      HepMC::IO_BaseClass::operator>>(HepMC::GenEvent*&) in cchg7YEh.o
  "operator new(unsigned long)", referenced from:
      read_event_file()     in cchg7YEh.o
      HepMC::IO_BaseClass::operator>>(HepMC::GenEvent*&) in cchg7YEh.o
  "___cxa_pure_virtual", referenced from:
      vtable for HepMC::IO_BaseClass in cchg7YEh.o
  "___gxx_personality_v0", referenced from:
      Dwarf Exception Unwind Info (__eh_frame) in cchg7YEh.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status

comment:5 Changed 10 years ago by kilian

Sorry, no idea how to fix that. A MAC problem? Or is the HepMC installation broken? ... the missing symbols are obviously in the stdc++ library, referenced from HepMC. HepMC is found, apparently.

The tool hepmc_6_rd.cpp is rather basic. It should be possible to figure out how to link this correctly with HepMC, compiling it manually without Makefile? No other libs are required.

comment:6 Changed 10 years ago by Juergen Reuter

Seems the Makefile is screwed up. It's also failing on SL6 with g++ 4.7.1:

g++ ../../tests/hepmc_6_rd.cpp -g -O2  -I/opt/whizard/include -L/opt/whizard/lib -lHepMC -Wl,-rpath /opt/whizard/lib -o hepmc_6_rd
g++: error: /opt/whizard/lib: No such file or directory

comment:7 Changed 10 years ago by Juergen Reuter

Severity: normalcritical

comment:8 Changed 10 years ago by Juergen Reuter

Actually, I have no clue why on the DESY machine configure is setting these variables as they are:

HEPMC_INCLUDES = -I/opt/whizard/include
HEPMC_LD_LIBRARY_PATH = /opt/whizard/lib

???

comment:9 Changed 10 years ago by Juergen Reuter

LOL, the /opt/whizard is solved, mea culpa, old garbage in .bashrc. (headbang)

comment:10 Changed 10 years ago by Juergen Reuter

Now I get on the DESY machines:

./hepmc_6_rd: error while loading shared libraries: libHepMC.so.4: cannot open shared object file: No such file or directory

comment:11 Changed 10 years ago by Juergen Reuter

Resolution: fixed
Status: reopenedclosed

Finally fixed by libtoolizing in r6111. Closing.

Note: See TracTickets for help on using tickets.