[Rivet] Python, Rivet 1.20, CERN AFS, LXBATCH

Terrance Figy Terrance.Maynard.Figy at cern.ch
Thu Mar 25 21:43:31 GMT 2010


Hello Rivet developers,

We were given a setup script to aid us phenomenologist in the TH  
group at CERN. It works only on SL5. I thought I'd see if I can  
compile Rivet with it.
However, the compilation of rivet crashes. I'm not sure how to fix  
it. I have installed my own versions of boost, fastjet, and hepmc.  
So, I'm a little perplexed.

Cheers,
Terrance

> bash: . /afs/cern.ch/sw/lcg/hepsoft/0.1/x86_64-slc5-gcc44-opt/setup.sh


gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall - 
Wstrict-prototypes -fPIC -DSWIG_TYPE_TABLE=hepmccompat -I/afs/cern.ch/ 
user/t/terrance/rivet-1.2.0/build/Rivet-1.2.1/include -I/afs/cern.ch/ 
user/t/terrance/rivet-1.2.0/local/include -I/afs/cern.ch/user/t/ 
terrance/rivet-1.2.0/local/include -I/afs/cern.ch/sw/lcg/external/GSL/ 
1.14/x86_64-slc5-gcc44-opt/include -I/afs/cern.ch/sw/lcg/hepsoft/0.1/ 
x86_64-slc5-gcc44-opt/include/python2.5 -c ./rivet_wrap.cc -o build/ 
temp.linux-x86_64-2.5/./rivet_wrap.o
cc1plus: warning: command line option "-Wstrict-prototypes" is valid  
for Ada/C/ObjC but not for C++
./rivet_wrap.cc: In function ‘int SWIG_Python_ConvertFunctionPtr 
(PyObject*, void**, swig_type_info*)’:
./rivet_wrap.cc:2051: error: invalid conversion from ‘const char*’ to  
‘char*’
./rivet_wrap.cc: In constructor ‘swig::PyObject_ptr::PyObject_ptr 
(PyObject*, bool)’:
./rivet_wrap.cc:2549: warning: suggest explicit braces to avoid  
ambiguous ‘else’
./rivet_wrap.cc: In destructor  
‘swig::PySequence_Cont<T>::~PySequence_Cont()’:
./rivet_wrap.cc:3761: warning: suggest explicit braces to avoid  
ambiguous ‘else’
./rivet_wrap.cc: In function ‘int SWIG_AsCharPtrAndSize(PyObject*,  
char**, size_t*, int*)’:
./rivet_wrap.cc:3846: error: cannot convert ‘int*’ to ‘Py_ssize_t*’  
for argument ‘3’ to ‘int PyString_AsStringAndSize(PyObject*, char**,  
Py_ssize_t*)’
./rivet_wrap.cc: In function ‘void SWIG_Python_FixMethods 
(PyMethodDef*, swig_const_info*, swig_type_info**, swig_type_info**)’:
./rivet_wrap.cc:12423: error: invalid conversion from ‘const char*’  
to ‘char*’
./rivet_wrap.cc: In static member function ‘static int  
swig::traits_asptr<std::map<K, T, std::less<_Key>,  
std::allocator<std::pair<const _Key, _Tp> > > >::asptr(PyObject*,  
std::map<K, T, std::less<_Key>, std::allocator<std::pair<const _Key,  
_Tp> > >**) [with K = std::basic_string<char, std::char_traits<char>,  
std::allocator<char> >, T = int]’:
./rivet_wrap.cc:3076:   instantiated from ‘int swig::asptr(PyObject*,  
Type**) [with Type = std::map<std::basic_string<char,  
std::char_traits<char>, std::allocator<char> >, int,  
std::less<std::basic_string<char, std::char_traits<char>,  
std::allocator<char> > >, std::allocator<std::pair<const  
std::basic_string<char, std::char_traits<char>, std::allocator<char>  
 >, int> > >]’
./rivet_wrap.cc:7911:   instantiated from here
./rivet_wrap.cc:4343: warning: deprecated conversion from string  
constant to ‘char*’
/afs/cern.ch/user/t/terrance/rivet-1.2.0/build/Rivet-1.2.1/include/ 
Rivet/Math/MathHeader.hh: At global scope:
/afs/cern.ch/user/t/terrance/rivet-1.2.0/build/Rivet-1.2.1/include/ 
Rivet/Math/MathHeader.hh:40: warning: ‘Rivet::MAXINT’ defined but not  
used
error: command 'gcc' failed with exit status 1
make[1]: *** [all-local] Error 1
make[1]: Leaving directory `/afs/cern.ch/user/t/terrance/rivet-1.2.0/ 
build/Rivet-1.2.1/pyext'
make: *** [all-recursive] Error 1

On 18 Mar 2010, at 20:30, Andy Buckley wrote:

> Ah, that's probably because SLC5 is a complete mess when it comes to
> compilers, libraries, etc.: the LCG libraries like HepMC, Fastjet,  
> etc.
> are all built with compilers other than the ones that are available as
> standard on the SLC5 system! (I did mention that this seemed a bit  
> dumb
> about a year ago, but the lxplus team didn't see the problem!)
>
> So when using lxplus5 you should first source the setup for a  
> useful LCG
> compiler, e.g.
>
> . /afs/cern.ch/sw/lcg/contrib/gcc/4.3/x86_64-slc5-gcc43-opt/setup.sh
>
> This is what I did when testing Rivet 1.2.0 pre-release copies on
> lxplus5, and they worked fine. I guess this should be added to the  
> Rivet
> wiki!
>
> Andy
>
>
>
> On 18/03/10 19:21, Terrance Figy wrote:
>> I tried compiling rivet-1.2.0 for slc5 and didn't have any luck  
>> with it.
>> -Terrance
>>
>>
>> On 18 Mar 2010, at 20:15, Andy Buckley wrote:
>>
>>> I recommend using SLC5 at CERN when possible: lxplus5.cern.ch  
>>> should be
>>> enough. If that's not an option, then I know that there are  
>>> Python 2.5
>>> setups on AFS -- the ATLAS software uses one, for sure -- maybe  
>>> the CERN
>>> helpdesk could advise on how to set up the shell environment to  
>>> use one
>>> of those?
>>>
>>> Andy
>>>
>>>
>>> On 18/03/10 15:24, Eike von Seggern wrote:
>>>> Hi Terrance,
>>>>
>>>> the old Python 2.3 on SL 4 is probably the culprit. It's missing  
>>>> some
>>>> language constructs modern Python version have.
>>>>
>>>> Can you please try the attached patch. You can apply it like this:
>>>>
>>>> cd
>>>> /afs/cern.ch/user/t/terrance/rivet-1.2.0/local/lib64/python2.3/ 
>>>> site-packages/
>>>>
>>>> patch -p0 < PATH/TO/lighthisto.patch
>>>>
>>>> Cheers,
>>>>     eike
>>>>
>>>>
>>>> On Thu, Mar 18, 2010 at 12:44 +0100, Terrance Figy wrote:
>>>>> Dear Rivet developers,
>>>>> I was wondering if you could help me understand why the aida2flat
>>>>> script crashes. Should I be using phython 2.5.  Cern AFS seems be
>>>>> using 2.3 by default on the SL4.
>>>>>
>>>>> Any help will be greatly appreciated.
>>>>>
>>>>>
>>>>> bash-3.00$ aida2flat -help
>>>>> Traceback (most recent call last):
>>>>>   File
>>>>> "/afs/cern.ch/user/t/terrance/rivet-1.2.0/local/bin/aida2flat",  
>>>>> line
>>>>> 5, in ?
>>>>>     import lighthisto
>>>>>   File
>>>>> "/afs/cern.ch/user/t/terrance/rivet-1.2.0/local/lib64/python2.3/ 
>>>>> site-packages/lighthisto.py",
>>>>> line 18
>>>>>     for code,name in codepoint2name.iteritems()
>>>>>
>>>>>
>>>>> Cheers,
>>>>> Terrance
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Rivet mailing list
>>>>> Rivet at projects.hepforge.org
>>>>> http://www.hepforge.org/lists/listinfo/rivet
>>>
>>>
>>> -- 
>>> Dr Andy Buckley
>>> SUPA Advanced Research Fellow
>>> Particle Physics Experiment Group, University of Edinburgh
>>>
>>> The University of Edinburgh is a charitable body, registered in
>>> Scotland, with registration number SC005336.
>>>
>>
>>
>
>
> -- 
> Dr Andy Buckley
> SUPA Advanced Research Fellow
> Particle Physics Experiment Group, University of Edinburgh
>
> The University of Edinburgh is a charitable body, registered in
> Scotland, with registration number SC005336.
>



More information about the Rivet mailing list