Pythia8 compilation failed with MG3.1.1 @NLO

Asked by Ro S

Hi,

I am currently running MadGraph5 v3.1.1 with Pythia8 installed via mg5_aMC. I am studying the process

>p p > t t~ w+ [QCD]

(NLO, importing previously the loop_sm model). With that setup, I am able to generate events in .lhe format up to the Pythia8 compilation step, where Pythia8 give me errors like

 USING PYTHIA 8, version >= 8.200
g++ -O -I/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8/include \
  -I/home/sarijuela/MG5_aMC_v3_1_1/NLOpptottbarw+/MCatNLO/include Pythia82.cc -o Pythia8.exe \
  -L/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8/lib -lpythia8 \
  -I/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/hepmc/include -L/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/hepmc/lib -Wl,-rpath,/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/hepmc/lib -lHepMC -L../lib -L/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8//lib -Ll,-rpath,/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8//lib -L/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/zlib/lib -Ll,-rpath,/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/zlib/lib -lpythia8 -lz -ldl -lstdc++ \

Pythia82.cc: In function ‘int main()’:
Pythia82.cc:34:26: error: ‘class Pythia8::CombineMatchingInput’ has no member named ‘getHook’; did you mean ‘setHook’?
   34 | matching = combined->getHook(pythia);
      | ^~~~~~~
      | setHook
Pythia82.cc:40:28: error: cannot convert ‘Pythia8::UserHooks*’ to ‘Pythia8::UserHooksPtr’ {aka ‘std::shared_ptr<Pythia8::UserHooks>’}
   40 | pythia.setUserHooksPtr(matching);
      | ^~~~~~~~
      | |
      | Pythia8::UserHooks*
In file included from Pythia82.cc:3:
/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8/include/Pythia8/Pythia.h:136:37: note: initializing argument 1 of ‘bool Pythia8::Pythia::setUserHooksPtr(Pythia8::UserHooksPtr)
  136 | bool setUserHooksPtr(UserHooksPtr userHooksPtrIn) {
      | ~~~~~~~~~~~~~^~~~~~~~~~~~~~
make: *** [Makefile:49: Pythia82] Error 1
Pythia8 compilation did not succeed, exiting

(extracted from mcatnlo.log). Could you please help me?

Cheers,
Rosa.

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Solved by:
Olivier Mattelaer
Solved:
Last query:
Last reply:
Revision history for this message
Best Olivier Mattelaer (olivier-mattelaer) said :
#1

Hi,

3.1.1 is out of support.
The issue here is that the pythia8 version that you are using (pythia8.3) is not supported with MG5aMC 3.1.1
The version of pythia installed via "install pythia8" will be pythia8.3 since all supported version of MG5aMC are now
compatible pythia8.3 (and some part of the code might not support pythia8.2 anymore --the point is that they change their API making the support of both very complex).

So the solution is to either move to a supported version.
either our long term stable (2.9.9)
or our quick development release (currently 3.3.2 but you can also use the release candidate of 3.4.0)

Cheers,

Olivier

> On 15 Apr 2022, at 17:15, Rosa Sandá <email address hidden> wrote:
>
> New question #701363 on MadGraph5_aMC@NLO:
> https://answers.launchpad.net/mg5amcnlo/+question/701363
>
> Hi,
>
> I am currently running MadGraph5 v3.1.1 with Pythia8 installed via mg5_aMC. I am studying the process
>
>> p p > t t~ w+ [QCD]
>
> (NLO, importing previously the loop_sm model). With that setup, I am able to generate events in .lhe format up to the Pythia8 compilation step, where Pythia8 give me errors like
>
> USING PYTHIA 8, version >= 8.200
> g++ -O -I/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8/include \
> -I/home/sarijuela/MG5_aMC_v3_1_1/NLOpptottbarw+/MCatNLO/include Pythia82.cc -o Pythia8.exe \
> -L/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8/lib -lpythia8 \
> -I/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/hepmc/include -L/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/hepmc/lib -Wl,-rpath,/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/hepmc/lib -lHepMC -L../lib -L/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8//lib -Ll,-rpath,/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8//lib -L/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/zlib/lib -Ll,-rpath,/home/sarijuela/MG5_aMC_v3_1_1/HEPTools/zlib/lib -lpythia8 -lz -ldl -lstdc++ \
>
> Pythia82.cc: In function ‘int main()’:
> Pythia82.cc:34:26: error: ‘class Pythia8::CombineMatchingInput’ has no member named ‘getHook’; did you mean ‘setHook’?
> 34 | matching = combined->getHook(pythia);
> | ^~~~~~~
> | setHook
> Pythia82.cc:40:28: error: cannot convert ‘Pythia8::UserHooks*’ to ‘Pythia8::UserHooksPtr’ {aka ‘std::shared_ptr<Pythia8::UserHooks>’}
> 40 | pythia.setUserHooksPtr(matching);
> | ^~~~~~~~
> | |
> | Pythia8::UserHooks*
> In file included from Pythia82.cc:3:
> /home/sarijuela/MG5_aMC_v3_1_1/HEPTools/pythia8/include/Pythia8/Pythia.h:136:37: note: initializing argument 1 of ‘bool Pythia8::Pythia::setUserHooksPtr(Pythia8::UserHooksPtr)
> 136 | bool setUserHooksPtr(UserHooksPtr userHooksPtrIn) {
> | ~~~~~~~~~~~~~^~~~~~~~~~~~~~
> make: *** [Makefile:49: Pythia82] Error 1
> Pythia8 compilation did not succeed, exiting
>
>
>
> (extracted from mcatnlo.log). Could you please help me?
>
>
> Cheers,
> Rosa.
>
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.

Revision history for this message
Ro S (rosanda) said :
#2

Hi Olivier!

Thank you so much!! I move to the long term stable version (because with the release candidate 3.4.0 I had the same issue), and that solved my problem!

Cheers,
Rosa.

Revision history for this message
Ro S (rosanda) said :
#3