Hi Alexander,
Looking at
/afs/cern.ch/sw/lcg/app/releases/ROOT/5.26.00b/i686-slc5-gcc43-opt/root/include/compiledata.h
I see that -m32 is passed in all compiler invocations - I don't see how
it could fail. Can you run
root [0] gDebug=7
root [1] .L Loader.C+
and send the output? (I'll be a few pages...)
Cheers, Axel.
Alexander Mann wrote on 07/28/2010 01:05 PM:
>
> Hi Bertrand,
>
> good idea, but it did not help :(
>
> What I am doing is this:
>
> # setting up 32 bit ROOT 5.26.00b
> source /afs/cern.ch/sw/lcg/contrib/gcc/4.3/i686-slc5-gcc43-opt/setup.sh
> export
> ROOTSYS=/afs/cern.ch/sw/lcg/app/releases/ROOT/5.26.00b/i686-slc5-gcc43-opt/root
>
> export
> PATH=/afs/cern.ch/sw/lcg/external/Python/2.5.4p2/i686-slc5-gcc43-opt/bin:$ROOTSYS/bin:$PATH
>
> export
> LD_LIBRARY_PATH=$ROOTSYS/lib:/afs/cern.ch/sw/lcg/external/Python/2.5.4p2/i686-slc5-gcc43-opt/lib:$LD_LIBRARY_PATH
>
> export PYTHONPATH=$PYTHONPATH:$ROOTSYS/lib
>
>
> In ROOT:
>
> .L Loader.C+
>
>
> This is the contents of the file Loader.C:
>
> #include <vector>
> #ifdef __CINT__
> #pragma link C++ class vector<vector<float> >;
> #pragma link C++ class vector<vector<int> >;
> #pragma link C++ class pair<string,string>;
> #else
> template class std::vector<std::vector<float> >;
> template class std::vector<std::vector<int> >;
> #endif
>
>
> Gives these error messages:
>
> root [0] .L Loader.C+
> Info in <TUnixSystem::ACLiC>: creating shared library
> /net/ph2/auto/home/mann/Code/PyROOT/./Loader_C.so
> {standard input}: Assembler messages:
> {standard input}:11: Error: suffix or operands invalid for `push'
> {standard input}:16: Error: relocated field and relocation type differ
> in signedness
> {standard input}:19: Error: suffix or operands invalid for `pop'
> .
> .
> .
> {standard input}:26058: Error: relocated field and relocation type
> differ in signedness
> {standard input}:26077: Error: relocated field and relocation type
> differ in signedness
> {standard input}:26096: Error: relocated field and relocation type
> differ in signedness
> g++: /net/ph2/auto/home/mann/Code/PyROOT/./Loader_C_ACLiC_dict.o: No
> such file or directory
> Error in <ACLiC>: Compilation failed!
>
> cu,
> Alexander
>
>
>
> Am 28.07.2010 12:56, schrieb Bertrand Bellenot:
>> Hi Alexander, >> >> Maybe you could try to setup the compiler: >> >> From bash: >> source /afs/cern.ch/sw/lcg/contrib/gcc/4.3/i686/setup.sh >> >> From tcshell: >> source /afs/cern.ch/sw/lcg/contrib/gcc/4.3/i686/setup.csh >> >> Cheers, Bertrand. >> >> -----Original Message----- >> From: owner-roottalk_at_root.cern.ch [mailto:owner-roottalk_at_root.cern.ch] >> On Behalf Of Alexander Mann >> Sent: Wednesday, July 28, 2010 12:47 >> To: roottalk_at_root.cern.ch >> Subject: [ROOT] .L xyz.C+ with 32bit ROOT version on 64bit machine >> >> >> Hi, >> >> I have a complicated problem. I need to use the 32 bit version of ROOT >> on a 64 bit machine. This seems to cause trouble when I try to compile >> macros in CINT with .L xyz.C+, I get lots of assembler errors, probably >> related to the 32/64 bit issue: >> >> {standard input}: Assembler messages: >> {standard input}:11: Error: suffix or operands invalid for `push' >> {standard input}:16: Error: relocated field and relocation type differ >> in signedness >> ... >> >> Is there a way to pass a switch to the assembler that fixes this? >> >> I am using this root: >> /afs/cern.ch/sw/lcg/app/releases/ROOT/5.26.00b/i686-slc5-gcc43-opt/root/ >> bin/root >> >> on such a machine: >> Linux 2.6.18-194.8.1.el5 #1 SMP Thu Jul 1 19:04:48 EDT 2010 x86_64 >> x86_64 x86_64 GNU/Linux >> >> Any help is much appreciated! >> >> cu, >> Alexander >>
This archive was generated by hypermail 2.2.0 : Wed Jul 28 2010 - 17:50:01 CEST