I was digging the Makefile provided inside Pythia8 folder. I don’t want to break the Makefile that came with Pythia8, is there a way of loading libPythia8.a file inside ROOT, which is much simpler I guess?
When I run : ./configure --help,
I get a lot out of which I am posting what I think is relevant.
Installation directories.
–prefix=DIR : Directory to install PYTHIA [$PWD].
–prefix-COMPONENT=DIR : Set the installation directory for each PYTHIA
COMPONENT from the following list.
bin : Binaries, including the configuration script [PREFIX/bin].
lib : Libraries, both shared and static [PREFIX/lib].
include : Source headers [PREFIX/include/Pythia8].
share : Shared data, including configuration, READMEs, documentation, and
examples [PREFIX/share/Pythia8].
The --prefix-COMPONENT=DIR seems relevant, but I am not sure how I can force pythia 8 to make a .so file. Suggestions please.
When I run : ./configure --help,
I get a lot out of which I am posting what I think is relevant.
Installation directories.
–prefix=DIR : Directory to install PYTHIA [$PWD].
–prefix-COMPONENT=DIR : Set the installation directory for each PYTHIA
COMPONENT from the following list.
bin : Binaries, including the configuration script [PREFIX/bin].
lib : Libraries, both shared and static [PREFIX/lib].
include : Source headers [PREFIX/include/Pythia8].
share : Shared data, including configuration, READMEs, documentation, and
examples [PREFIX/share/Pythia8].
The --prefix-COMPONENT=DIR seems relevant, but I am not sure how I can force pythia 8 to make a .so file. Suggestions please.[/quote]
I did this :
./configure --enable-shared
make
Got the .so file in the lib directory. Thanks for your suggestions!!
While I was able to get the shared library, I am still unable to run the pythia8.C, the error I get is the following
Processing pythia8.C…
Error in TGClient::TGClient: can’t open display “10.66.249.100:0.0”, switching to batch mode…
In case you run from a remote ssh session, reconnect with ssh -Y
Error: Symbol TPythia8 is not defined in current scope pythia8.C:51:
Error: Symbol TPythia8 is not defined in current scope pythia8.C:51:
Error: type TPythia8 not defined FILE:/gpfs22/home/user/Pythia8NativeTesting/./pythia8.C LINE:51
Error: Invalid type ‘TPythia8*’ in declaration of ‘pythia8’ pythia8.C:51:
This is what I have at line 51 : TPythia8* pythia8 = new TPythia8();
I went into the $ROOTSYS/include to check if there is TPythia8.h, there is none, similarly libEGPythia8 is also not found.
@ Wiley E Coyote : I am on a computing cluster, so I don’t have an option to compile root
@Axel I don’t have permissions to do anything and moroever I wasnt able to find a configure file
As I understand, I need to tell Pythia8 ROOT’s path during compilation, I wasn’t able to mix the
g++ options so that I can compile as I would normally if I need to use classes from several packages at once.