difficulty installing Pythia8 in 2.5.2

Bug #1650664 reported by Matthew Buckley
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MadGraph5_aMC@NLO
Invalid
Undecided
Valentin Hirschi

Bug Description

I've been trying to install MG5 2.5.2 on two different systems (Scientific Linux and my personal computer running Mac OSX). In both cases, I have a complete failure to get key programs to compile, with similar problems in both. In both cases, several example programs in the Pythia8 installation fail to compile, and despite these being non-critical components, the installation exits with a failure message:

g++ main89.cc /het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/pythia8//lib/libpythia8.a -o main89 -I/het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/hepmc/include -I/het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/pythia8//include -ldl -fPIC -lstdc++ -DHEPMC2HACK -DGZIPSUPPORT -I/cms/base/cmssoft/slc6_amd64_gcc481/cms/cmssw/CMSSW_7_1_0_pre9/external/slc6_amd64_gcc481/include -L/cms/base/cmssoft/slc6_amd64_gcc481/cms/cmssw/CMSSW_7_1_0_pre9/external/slc6_amd64_gcc481/lib -Wl,-rpath,/cms/base/cmssoft/slc6_amd64_gcc481/cms/cmssw/CMSSW_7_1_0_pre9/external/slc6_amd64_gcc481/lib -lz -Wl,-rpath,/het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/pythia8//lib -ldl\
  -L/het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/hepmc/lib -Wl,-rpath,/het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/hepmc/lib -lHepMC
Error: main91 requires ROOT
Error: main92 requires ROOT
 Finished PYTHIA8 installation

Then trying to install mg5amc_py8_interface seems to not recognize that pythia8 is installed. On my laptop I get the following error:

Detected 'mg5amc_py8_interface' missing dependency: 'pythia8'. Will install it now.
Detected 'pythia8' missing dependency: 'lhapdf6'. Will install it now.

../libtool: line 1122: 58872 Abort trap: 6 g++ -DHAVE_CONFIG_H -I. -I../config -I../include/LHAPDF -I../include -I/Users/Matthew/Documents/Research/MadGraph5.2.5.2/HEPTools/lhapdf6/include -I/usr/local/include -I/Users/Matthew/Documents/Research/MadGraph5.2.5.2/HEPTools/lhapdf6/include -Dunix -flat_namespace -pedantic -Wall -Wno-long-long -static-libstdc++ -MT PDF.lo -MD -MP -MF .deps/PDF.Tpo -c PDF.cc -fno-common -DPIC -o .libs/PDF.o
make[2]: *** [PDF.lo] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1
 Install LHAPDF6
Making install in src
Making install in yamlcpp
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
  CXX PDF.lo
PDF.cc: In member function 'virtual void boost::exception_detail::error_info_injector<boost::io::bad_format_string>::_ZThn24_N5boost16exception_detail19error_info_injectorINS_2io17bad_format_stringEED1Ev()':
PDF.cc:62:1: error: unrecognizable insn:
 }
 ^
(call_insn/j 3 2 4 (call (mem/u/c:DI (const:DI (unspec:DI [
                        (symbol_ref/i:DI ("_ZN5boost16exception_detail19error_info_injectorINS_2io17bad_format_stringEED1Ev") [flags 0x1] <function_decl 0x112a7b870 __comp_dtor >)
                    ] UNSPEC_GOTPCREL)) [0 S8 A8])
        (const_int 0 [0])) /usr/local/include/boost/exception/exception.hpp:336 -1
     (nil)
    (nil))
PDF.cc:62:1: internal compiler error: in insn_default_length, at config/i386/i386.md:2072

PDF.cc:62:1: internal compiler error: Abort trap: 6
g++: internal compiler error: Abort trap: 6 (program cc1plus)
../libtool: line 1122: 58906 Abort trap: 6 g++ -DHAVE_CONFIG_H -I. -I../config -I../include/LHAPDF -I../include -I/Users/Matthew/Documents/Research/MadGraph5.2.5.2/HEPTools/lhapdf6/include -I/usr/local/include -I/Users/Matthew/Documents/Research/MadGraph5.2.5.2/HEPTools/lhapdf6/include -Dunix -flat_namespace -pedantic -Wall -Wno-long-long -static-libstdc++ -MT PDF.lo -MD -MP -MF .deps/PDF.Tpo -c PDF.cc -fno-common -DPIC -o .libs/PDF.o
make[2]: *** [PDF.lo] Error 1
make[1]: *** [install-recursive] Error 1
make: *** [install-recursive] Error 1
copy index and conf file
usage: cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file target_file
       cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file ... target_directory
usage: cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file target_file
       cp [-R [-H | -L | -P]] [-fi | -n] [-apvX] source_file ... target_directory

The frustrating problem here is that lhapdf6 is already installed on my laptop and the directory set in the madgraph configuration file. There does not seem to be any option to turn off the lhapdf installation at this step, and since the mg5amc_py_interface.

On the SL6 cluster, I managed somehow to turn off the LHAPDF option, so the error I get in the installation of MG5amC_PY8 is different:

Error during the compilation of MG5aMC_PY8_interface:
g++ MG5aMC_PY8_interface.cc ../lib/libpythia8.a -o MG5aMC_PY8_interface -I/het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/hepmc/include -I../include -ldl -fPIC -lstdc++ -DHEPMC2HACK -DGZIPSUPPORT -I/cms/base/cmssoft/slc6_amd64_gcc481/cms/cmssw/CMSSW_7_1_0_pre9/external/slc6_amd64_gcc481/include -L/cms/base/cmssoft/slc6_amd64_gcc481/cms/cmssw/CMSSW_7_1_0_pre9/external/slc6_amd64_gcc481/lib -Wl,-rpath,/cms/base/cmssoft/slc6_amd64_gcc481/cms/cmssw/CMSSW_7_1_0_pre9/external/slc6_amd64_gcc481/lib -lz -Wl,-rpath,../lib -ldl\
  -L/het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/MG5aMC_PY8_interface/static_library_dependencies/libHepMC.a
/tmp/mbuckley/ccbxmFoX.o: In function `main':
MG5aMC_PY8_interface.cc:(.text+0x4e2f): undefined reference to `HepMC::IO_GenEvent::IO_GenEvent(std::string const&, std::_Ios_Openmode)'
MG5aMC_PY8_interface.cc:(.text+0x84bd): undefined reference to `HepMC::WeightContainer::WeightContainer(std::vector<double, std::allocator<double> > const&)'
MG5aMC_PY8_interface.cc:(.text+0x84df): undefined reference to `HepMC::Units::default_momentum_unit()'
MG5aMC_PY8_interface.cc:(.text+0x84e7): undefined reference to `HepMC::Units::default_length_unit()'
MG5aMC_PY8_interface.cc:(.text+0x851d): undefined reference to `HepMC::GenEvent::GenEvent(int, int, HepMC::GenVertex*, HepMC::WeightContainer const&, std::vector<long, std::allocator<long> > const&, HepMC::Units::MomentumUnit, HepMC::Units::LengthUnit)'
MG5aMC_PY8_interface.cc:(.text+0x86c3): undefined reference to `HepMC::WeightContainer::push_back(double const&, std::string)'
MG5aMC_PY8_interface.cc:(.text+0x8cfe): undefined reference to `HepMC::WeightContainer::push_back(double const&, std::string)'
MG5aMC_PY8_interface.cc:(.text+0x8ff0): undefined reference to `HepMC::WeightContainer::push_back(double const&, std::string)'
MG5aMC_PY8_interface.cc:(.text+0x9195): undefined reference to `HepMC::WeightContainer::push_back(double const&, std::string)'
MG5aMC_PY8_interface.cc:(.text+0x933a): undefined reference to `HepMC::WeightContainer::push_back(double const&, std::string)'
MG5aMC_PY8_interface.cc:(.text+0xbce3): undefined reference to `HepMC::IO_GenEvent::~IO_GenEvent()'
MG5aMC_PY8_interface.cc:(.text+0xd432): undefined reference to `HepMC::IO_GenEvent::~IO_GenEvent()'
/tmp/mbuckley/ccbxmFoX.o: In function `HepMC::Flow::set_icode(int, int)':
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC4Flow9set_icodeEii[_ZN5HepMC4Flow9set_icodeEii]+0x41): undefined reference to `HepMC::Flow::Flow(HepMC::Flow const&)'
/tmp/mbuckley/ccbxmFoX.o: In function `HepMC::Flow::set_unique_icode(int)':
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC4Flow16set_unique_icodeEi[_ZN5HepMC4Flow16set_unique_icodeEi]+0x3f): undefined reference to `HepMC::Flow::Flow(HepMC::Flow const&)'
/tmp/mbuckley/ccbxmFoX.o: In function `HepMC::GenParticle::set_flow(int, int)':
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC11GenParticle8set_flowEii[_ZN5HepMC11GenParticle8set_flowEii]+0x4f): undefined reference to `HepMC::Flow::~Flow()'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC11GenParticle8set_flowEii[_ZN5HepMC11GenParticle8set_flowEii]+0x80): undefined reference to `HepMC::Flow::~Flow()'
/tmp/mbuckley/ccbxmFoX.o: In function `HepMC::GenEvent::set_cross_section(HepMC::GenCrossSection const&)':
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC8GenEvent17set_cross_sectionERKNS_15GenCrossSectionE[_ZN5HepMC8GenEvent17set_cross_sectionERKNS_15GenCrossSectionE]+0x4b): undefined reference to `HepMC::GenCrossSection::GenCrossSection(HepMC::GenCrossSection const&)'
/tmp/mbuckley/ccbxmFoX.o: In function `HepMC::IO_BaseClass::read_next_event()':
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC12IO_BaseClass15read_next_eventEv[_ZN5HepMC12IO_BaseClass15read_next_eventEv]+0x39): undefined reference to `HepMC::WeightContainer::WeightContainer(std::vector<double, std::allocator<double> > const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC12IO_BaseClass15read_next_eventEv[_ZN5HepMC12IO_BaseClass15read_next_eventEv]+0x55): undefined reference to `HepMC::Units::default_momentum_unit()'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC12IO_BaseClass15read_next_eventEv[_ZN5HepMC12IO_BaseClass15read_next_eventEv]+0x5d): undefined reference to `HepMC::Units::default_length_unit()'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC12IO_BaseClass15read_next_eventEv[_ZN5HepMC12IO_BaseClass15read_next_eventEv]+0x93): undefined reference to `HepMC::GenEvent::GenEvent(int, int, HepMC::GenVertex*, HepMC::WeightContainer const&, std::vector<long, std::allocator<long> > const&, HepMC::Units::MomentumUnit, HepMC::Units::LengthUnit)'
/tmp/mbuckley/ccbxmFoX.o: In function `HepMC::Pythia8ToHepMC::fill_next_event(Pythia8::Event&, HepMC::GenEvent*, int, Pythia8::Info*, Pythia8::Settings*, bool, HepMC::GenParticle*, int)':
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x10b): undefined reference to `HepMC::Units::conversion_factor(HepMC::Units::MomentumUnit, HepMC::Units::MomentumUnit)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x139): undefined reference to `HepMC::Units::conversion_factor(HepMC::Units::LengthUnit, HepMC::Units::LengthUnit)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x221): undefined reference to `HepMC::WeightContainer::WeightContainer(std::vector<double, std::allocator<double> > const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x248): undefined reference to `HepMC::GenVertex::GenVertex(HepMC::FourVector const&, int, HepMC::WeightContainer const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x27d): undefined reference to `HepMC::GenVertex::add_particle_in(HepMC::GenParticle*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x293): undefined reference to `HepMC::GenEvent::add_vertex(HepMC::GenVertex*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x412): undefined reference to `HepMC::Flow::Flow(HepMC::GenParticle*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x430): undefined reference to `HepMC::Polarization::Polarization(double, double)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x466): undefined reference to `HepMC::GenParticle::GenParticle(HepMC::FourVector const&, int, int, HepMC::Flow const&, HepMC::Polarization const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x49f): undefined reference to `HepMC::Flow::~Flow()'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x4df): undefined reference to `HepMC::GenParticle::suggest_barcode(int)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x535): undefined reference to `HepMC::GenParticle::set_generated_mass(double const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x66e): undefined reference to `HepMC::GenEvent::set_beam_particles(HepMC::GenParticle*, HepMC::GenParticle*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x77b): undefined reference to `HepMC::GenVertex::add_particle_out(HepMC::GenParticle*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x940): undefined reference to `HepMC::WeightContainer::WeightContainer(std::vector<double, std::allocator<double> > const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x967): undefined reference to `HepMC::GenVertex::GenVertex(HepMC::FourVector const&, int, HepMC::WeightContainer const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x99f): undefined reference to `HepMC::GenVertex::add_particle_out(HepMC::GenParticle*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x9b5): undefined reference to `HepMC::GenEvent::add_vertex(HepMC::GenVertex*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0xacd): undefined reference to `HepMC::GenVertex::add_particle_in(HepMC::GenParticle*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0xe5f): undefined reference to `HepMC::WeightContainer::WeightContainer(std::vector<double, std::allocator<double> > const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0xe86): undefined reference to `HepMC::GenVertex::GenVertex(HepMC::FourVector const&, int, HepMC::WeightContainer const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0xed8): undefined reference to `HepMC::GenVertex::add_particle_out(HepMC::GenParticle*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0xef1): undefined reference to `HepMC::GenEvent::add_vertex(HepMC::GenVertex*)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x13e9): undefined reference to `HepMC::WeightContainer::push_back(double const&)'
MG5aMC_PY8_interface.cc:(.text._ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi[_ZN5HepMC14Pythia8ToHepMC15fill_next_eventERN7Pythia85EventEPNS_8GenEventEiPNS1_4InfoEPNS1_8SettingsEbPNS_11GenParticleEi]+0x14a6): undefined reference to `HepMC::Flow::~Flow()'
collect2: error: ld returned 1 exit status
make: *** [MG5aMC_PY8_interface] Error 1

Given how straightforward I found installing previous packages on MadGraph, I'm really surprised at the difficulty I'm having with this new set of programs on two completely different operating systems.

Thanks for any help you can give.
Matt

Changed in mg5amcnlo:
assignee: nobody → Valentin Hirschi (valentin-hirschi)
Revision history for this message
Valentin Hirschi (valentin-hirschi) wrote :
Download full text (3.9 KiB)

First of all, I would like to stress that this "new set of programs" is much more involved than previously considered ones for automatic installation and with many issues out of MG5_aMC control which should be addressed directly by their corresponding authors.
This automatic installation option is a difficult enterprise that requires tedious development to make as stable as possible on many system, and for which little to no credit is awarded.
So I thank you in advance for your understanding of the issues faced, especially in the early stages of the release.
That being said, I appreciate your feedback which will hopefully help improving the stability of such automated installations within MG5aMC.

Regarding your errors:

a)

Error: main91 requires ROOT
Error: main92 requires ROOT
 Finished PYTHIA8 installation

Pythia8 compiles by default all example drivers, and skips the ones requiring roots (if not enabled, the MG5_aMC installer automatically detects whether it is available or not based on your environment variables). It does so with this unnecessarily scary message, but I believe that in this case Pythia8 installation was successful.

b)

Detected 'mg5amc_py8_interface' missing dependency: 'pythia8'. Will install it now.

MG5aMC looks for pythia8 by scanning your LIBRARY_PATH and/or LD_LIBRARY_PATH.
In the case of pythia8 it will look for the existence of the library 'libpythia8.(a|so|dylib)' in these paths.

However, if the pythia8 path is already specified in MG5_aMC option 'pythia8_path' (please double check that before running 'install mg5amc_py8_interface' by running the command 'display pythia8_path' in the interactive interface) then it should force its use, and I indeed don't understand why it says:

Detected 'mg5amc_py8_interface' missing dependency: 'pythia8'. Will install it now.

In my case the pythia8_path option is set to:

pythia8_path : /Users/valentin/Documents/Work/MG5/HEPTools/pythia8 (user set)

Please let me know if indeed pythia8_path was correctly set, and if so, I'll look into this further.

c) The same comment as for item b) above holds true for lhapdf6 as well, in which case MG5aMC will look for the library 'libLHAPDF.(a|so|dylib)' if not already specified in the MG5aMC option 'lhapdf' where the path to the executable 'lhapdf-config' should be specified, if not already available from your system-wide PATH variable.

d) When installing LHAPDF, the error:

PDF.cc:62:1: internal compiler error: in insn_default_length, at config/i386/i386.md:2072

Seems clearly related to an issue in the compiler used. What is your compiler suite (apparently cc1plus , but what version) used when encountering this issue? Have you set anything in the MG5aMC option 'cpp_compiler' (you shouldn't need to).

Notice that you can force pythia8 *not* to link against lhapdf by adding the following option to its installation from MG5aMC:

MG5_aMC> install pythia8 --with_lhapdf5=OFF --with_lhapdf6=OFF --logging=DEBUG --keep_source

since lhapdf is not mandatory for Pythia8 (the last two options I wrote are optional and just there for better monitoring).
Just to be safe, when doing that also make sure that the lhapdf option of MG5_aMC is disabl...

Read more...

Revision history for this message
Matthew Buckley (mattbuckley) wrote :

Valentin,
Thank you for your response, I understand that this new package has a lot more moving parts.

Your suggestion in part a) seems to be correct, so that issue is solved.

I am concentrating on getting the installation on the Scientific Linux system up and working, so I will concentrate on the issues b) and e) you identified. There are some issues with the version of boost on that system, so I am not attempting to install LHAPDF there.

I started with a clean installation of MG5_aMC_2_5_2. I then did 'install hepmc', which claims it installed correctly. However, after this the command "display options hepmc_path" returns
 hepmc_path : None (user set)

I then set a path via
set hepmc_path /het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/hepmc

now the result of "display options hepmc_path" is
hepmc_path : /het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/hepmc (user set)

However, I have checked that quitting MG5_aMC and restarting it causes this variable to be unset. This is despite the fact that my input/mg5_configuration.txt file contains the line
hepmc_path = /het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/hepmc

Setting this path for hepmc inside the MG5_aMC environment, when I then went to install pythia8 using install pythia8 --with_lhapdf5=OFF --with_lhapdf6=OFF --logging=DEBUG --keep_source I get the following message at the start of installation

|| /!\/!\/!\
|| Note that he following version of HEPMC
|| /cms/base/cmssoft/slc6_amd64_gcc481/cms/cmssw/CMSSW_7_1_0_pre9/external/slc6_amd64_gcc481
|| was detected as *not* supporting named weights. The MG5aMC-PY8 interface will have to write a separate hepmc file
|| for each extra weight potentially specified for studying systematic uncertainties (PDF, scale, merging, etc...)
We recommend that you change to the version of hepmc to the one that can be installed with this tool
|| /!\/!\/!\

I then get the error:
A problem occured during the installation of 'mg5amc_py8_interface'.
Content of the installation log file '/het/p4/mbuckley/MG5_aMC_v2_5_2/HEPTools/MG5aMC_PY8_interface/mg5amc_py8_interface_install.log':

The version of HEPMC2 linked to Pythia8 seems not to include a static library.
This is necessary for the default compilation of MG5aMC_PY8_interface.
You can try again with the option --pythia8_makefile but HEPMC2 will need to be available at runtime.

I am not sure why MadGraph is defaulting to the system's version of hepmc rather than the local one, or why it cannot seem to remember where hepmc is. After this installation command, the pythia8 path is set correctly, so the problem seems just to be with mg5amc_py8_interface_path

Thanks for you help.

Revision history for this message
Valentin Hirschi (valentin-hirschi) wrote : Re: [Bug 1650664] Re: difficulty installing Pythia8 in 2.5.2
Download full text (25.1 KiB)

Thank you for your feedback.

First let me stress that if you have issues with boost on your machine, you
can try to install it with MG5_aMC as well, using:

MG5_aMC> install boost

which should hopefully allow you then to install lhapdf6.

Now, regarging the hepmc_path setting issue, there is indeed a problem in
MG5_aMC where it tries to validate the path specified by looking for the
file:

<hepmc_path>/include/HEPEVT_Wrapper.h

instead of the correct location

<hepmc_path>/include/HepMC/HEPEVT_Wrapper.h

And this resulted in the odd and frustration behavior you reported (sorry
for this). This can easily be fixed by modifying the following two lines
(in <MG5_install_path>/madgraph/interface/madgraph_interface.py, around
line 6538):

                elif key == 'hepmc_path' and not
os.path.isfile(pjoin(MG5DIR, path, 'include', 'HEPEVT_Wrapper.h')):
                    if not os.path.isfile(pjoin(path, 'include',
'HEPEVT_Wrapper.h')):

->

                elif key == 'hepmc_path' and not
os.path.isfile(pjoin(MG5DIR, path, 'include', 'HepMC', 'HEPEVT_Wrapper.h')):
                    if not os.path.isfile(pjoin(path, 'include', 'HepMC',
'HEPEVT_Wrapper.h')):

Please amend your installation with this change, which will be present in
the next release.

For consistency, the 'mg5amc_py8_interface' must always link against the
HepMC version linked against Pythia8, and for this reason, when installing
that interface, I extract the location of HepMC directly from Pythia8.

I suspect that in your case Pythia8 was linked against your system-wide
problematic HepMC. You should therefore re-install pythia8 *after* you have
successfully installed 'hepmc' with MG5_aMC (using 'install hepmc').
You can do this with the following command:

MG5_aMC> install pythia8 --logging=DEBUG --keep_source --force

Thanks to the debug option, you should see the following prior to the start
of the (re-)installation of pythia8:

[..]
'pythia8' dependency 'hepmc' found at:
  <your_MG5_install_directory>/HEPTools
[..]
confirming that you are now correctly linking against your local
installation of HepMC.

If this is not the case, then you can immediately interrupt the
installation and try again with:

MG5_aMC> install pythia8 --force --logging=DEBUG --keep_source
--with_hepmc=<your_MG5_install_directory>/HEPTools

which should definitely use the local hepmc installation as it is forced.

You should now try again to install the 'mg5amc_py8_interface' with:

MG5_aMC> install mg5amc_py8_interface --logging=DEBUG --keep_source --force

which will hopefully be successful this time. If not, let me know.

On Sun, Dec 18, 2016 at 7:29 PM, Matthew Buckley <<email address hidden>
> wrote:

> Valentin,
> Thank you for your response, I understand that this new package has a lot
> more moving parts.
>
> Your suggestion in part a) seems to be correct, so that issue is solved.
>
> I am concentrating on getting the installation on the Scientific Linux
> system up and working, so I will concentrate on the issues b) and e) you
> identified. There are some issues with the version of boost on that
> system, so I am not attempting to install LHAPDF there.
>
> I started with a clean installatio...

Changed in mg5amcnlo:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.