Fork me on GitHub

Opened 12 years ago

Closed 12 years ago

#153 closed Bug (fixed)

compilation issue on MacosX

Reported by: mattelaer Owned by: Pavel Demin
Priority: major Milestone:
Component: Delphes code Version:
Keywords: Cc:

Description

Hi guys,

Since a while, I didn't succeed to compile Delphes on my laptop (os.x 10.8), previously I was thinking that this was due to ExRootAnalysis, but this one now compiles (thanks to Pavel).
(log in attachment)

As a second question, is there a way to ensure automatically that MG5 always provides the latest version of MG5?
is
svn checkout https://cp3.irmp.ucl.ac.be/sources/delphes/trunk
always provides a stable release?
If yes, should I create my own tarball, or can I always assume that the link will always be:
https://cp3.irmp.ucl.ac.be/projects/delphes/raw-attachment/wiki/WikiStart/Delphes_V_${VERSION}.tar.gz

For the moment the change of version is done in a manual way (when I realize that a new version is present and that I have time to manually change the path in the mg5 script).

Attachments (3)

log.txt (239.2 KB ) - added by mattelaer 12 years ago.
error.log (9.2 KB ) - added by Johan Alwall 12 years ago.
Mac OS X error for Delphes 3
error2.log (2.0 KB ) - added by Johan Alwall 12 years ago.
Mac OS X error for Delphes 3 (after fix)

Download all attachments as: .zip

Change History (21)

by mattelaer, 12 years ago

Attachment: log.txt added

comment:1 by favereau, 12 years ago

Hi Olivier, i searched the tickets and it seems ticket #42 is similar and has a proposed solution. Could you try it ?

As for the other questions:

  • the trunk is supposed to be stable at all times
  • the tarball is not automatically synchronised

All current problems of delphes 2 are fixed in delphes 3 which is in beta. It would be nice to have it in madgraph when it is stabilized !

Jerome

comment:2 by Johan Alwall, 12 years ago

Just to let you know that I have exactly the same problem (my log is identical) on OS X 10.6 with gcc 4.6. I just recompiled ROOT to make sure that there are no conflicts between different compilers. I also tried the fix in https://cp3.irmp.ucl.ac.be/projects/delphes/ticket/42#comment:6 but that doesn't help either. Any help would be much appreciated.

All the best,
Johan

comment:3 by Pavel Demin, 12 years ago

Hi Johan,

Do you have the same problem with Delphes 3?

Pavel

by Johan Alwall, 12 years ago

Attachment: error.log added

Mac OS X error for Delphes 3

comment:4 by Johan Alwall, 12 years ago

Well, perhaps not the same... I just uploaded an attachment with my compilation errors for Delphes 3.

Johan

comment:5 by Pavel Demin, 12 years ago

Hi Johan,

Thanks a lot for the test. The error that you observe with Delphes 3 is already fixed. The fix is quite simple. You'll need to add

#include <rpc/types.h>

just before

#include <rpc/xdr.h>

in readers/DelphesSTDHEP.cpp

We'll try to release a Delphes 3 version with this fix ASAP.

It also looks like Makefile from Delphes 3 works better than the one from Delphes 2. I'll try to back port all the Makefile fixes from Delphes 3 to Delphes 2.

Regards,

Pavel

comment:6 by mattelaer, 12 years ago

Sorry for the late reply, I've missed the answer of Jerome.

So I just try the fix of #42 and this is not working.

Concerning the Delphes version in MG5, I will therefore create a tarball on the MG5 cluster
based on the latest svn version, such that we will be automatically up-to-date.

Cheers,

Olivier

comment:7 by Johan Alwall, 12 years ago

Hello Pavel,

I did as you suggested in comment:6, but I still get compilation errors. I attach the new log.

Thanks,
Johan

by Johan Alwall, 12 years ago

Attachment: error2.log added

Mac OS X error for Delphes 3 (after fix)

comment:8 by Pavel Demin, 12 years ago

Hi Johan,

Thanks for this new test. It looks like €˜strnlen is not available on MacOSX.

Could you try to replace the following line in readers/DelphesSTDHEP.cpp

  if(strnlen(fBuffer, 2) < 2) version = UNKNOWN;

with

  if(fBuffer[0] == '\0' || fBuffer[1] == '\0') version = UNKNOWN;

comment:9 by Johan Alwall, 12 years ago

Hello Pavel,

With this change, it works! It also works perfectly to run Delphes 3 on a MadEvent-Pythia STDHEP file, and convert it into LHCO. Great!

It would be great if you could port the makefiles from 3 to 2, so it's possible to use also Delphes 2 on Mac. Please let us know here when it's done.

Olivier, we need to be a bit careful since Delphes 3 uses different file names as well as input file structure compared to Delphes 2. So I suggest to have two "run_delphes" scripts (run_delphes and run_delphes3), and select which one to use based on the Delphes version of the user. I'll push the run_delphes3 script to v. 1.5.8, and you can do the selection. ;-)
The good news is that no other changes are needed in order to run Delphes 3.

Thanks a lot to all involved!
Johan

Last edited 12 years ago by Johan Alwall (previous) (diff)

comment:10 by Pavel Demin, 12 years ago

Hi Johan,

I've tried to fix the Delphes 2 Makefile. Here is a link to the new version

http://cp3.irmp.ucl.ac.be/downloads/Delphes_V_2.0.4.tar.gz

Could you, please test it?

Thanks,

Pavel

comment:11 by Johan Alwall, 12 years ago

Excellent, v. 2.0.4 compiles without any problems or complaints!

Thanks a lot,
Johan

comment:12 by Pavel Demin, 12 years ago

Owner: set to Pavel Demin
Status: newaccepted

Hi Johan,

Thanks a lot for the test!

I've added v. 2.0.4 on the front page.

Cheers,

Pavel

comment:13 by Pavel Demin, 12 years ago

Olivier,

I've added 2 symbolic links to the latest versions of Delphes 2 and Delphes 3:

http://cp3.irmp.ucl.ac.be/downloads/Delphes_V_2_current.tar.gz

http://cp3.irmp.ucl.ac.be/downloads/Delphes-3-current.tar.gz

and we'll try to maintain them up-to-date.

The only problem is that when you unpack the tar files, you obtain directories with changing version number in their name like

Delphes_V_2.0.4 or Delphes_V_2.0.5 etc

Delphes-3.0.2 or Delphes-3.0.3 etc

Is it OK for you or it would be better to have the same directory name?

Cheers,

Pavel

Last edited 12 years ago by Pavel Demin (previous) (diff)

comment:14 by Johan Alwall, 12 years ago

Hello Pavel,

Since apparently I'm faster, I'll respond ;-)

Different names is fine, but would it be possible to stick to a single naming structure, i.e., use
Delphes_V_3.0.2
also for Delphes 3? That should be useful for both us and other users I think.

Thanks a lot,
Johan

comment:16 by Johan Alwall, 12 years ago

Awesome! This is good, right, Olivier?

Thanks a bunch Pavel!

Johan

comment:17 by mattelaer, 12 years ago

Thanks so much Pavel.
Delphes2 is now compiling perfectly on my computer.

Thanks as well for the fix tarball this helps me quite a lot :-)

comment:18 by Pavel Demin, 12 years ago

Resolution: fixed
Status: acceptedclosed
Note: See TracTickets for help on using tickets.