Re: ROOTCINT problem on Windows

From: Axel Naumann <Axel.Naumann_at_cern.ch>
Date: Mon, 14 Sep 2009 15:57:38 +0200


Hi Michael,

thanks for the confirmation!

Cheers, Axel.

Lynch, Michael (STFC,RAL,PPD) wrote on 09/14/2009 02:24 PM:
> Hi,
>
> Sorry it's taken me quite so long to get back to you. Everything seems
> to work correctly in this version. Thanks for the help.
>
> Regards,
>
> Mike
>
> -----Original Message-----
> From: Axel Naumann [mailto:Axel.Naumann_at_cern.ch]
> Sent: 08 September 2009 09:54
> To: Lynch, Michael (STFC,RAL,PPD)
> Cc: roottalk_at_root.cern.ch
> Subject: Re: [ROOT] ROOTCINT problem on Windows
>
> Hi Michael,
>
> it must of course not crash either way! The -c is needed. Thanks for
> trying out the trunk. If it still fails: can you send the headers and
> LinkDef, or extract a minimal version that reproduces the issue?
>
> Cheers, Axel.
>
> On 2009-09-08 10:39, Lynch, Michael (STFC,RAL,PPD) wrote:

>> Hello,
>>
>> I'm just downloading the trunk version now and building it. I'd be
>> surprised if it was an issue, but it's probably worth mentioning I'm
>> using the ROOT Builder program instead of Cygwin, as that's not setup

> on
>> my machine.
>>
>> As I said, the result with -c and without -p is it crashes, and

> without
>> either:
>>
>> Limitation: Reference member not supported. Please use pointer
>> D:/root/include\T
>> GenericClassInfo.h(36)
>>
>> To summarise, with version 5.24/00 (downloaded as a binary from
>> http://root.cern.ch/drupal/content/production-version-524, using the
>> "Release" version for VC++ 9):
>>
>> 	
>> ------------------------------------------------------------
>> 		| Without -p			| With -p
>> |
>>

> ------------------------------------------------------------------------
>> - >> Without -c | Limitation: Reference | 2382880_cint.cxx >> | >> | member not supported. | >> D:/root/cint/cint/include\lim | >> | Please use pointer D:/ | its.h(8) : >> | >> | root/include\TGeneric | fatal error C1017: >> | >> | ClassInfo.h(36) | invalid integer >> constant | >> | | expression >> | >> | | Error: external >> preprocessing | >> | | failed. (0) >> | >>
> ------------------------------------------------------------------------
>> - >> With -c | Rootcint crashes | Rootcint crashes >> | >>
> ------------------------------------------------------------------------
>> - >> >> As soon as I finish the build, I'll let you know the results for the >> trunk version. >> >> Regards, >> >> Mike >> >> -----Original Message----- >> From: Axel Naumann [mailto:Axel.Naumann_at_cern.ch] >> Sent: 07 September 2009 17:06 >> To: Lynch, Michael (STFC,RAL,PPD) >> Cc: roottalk_at_root.cern.ch >> Subject: Re: [ROOT] ROOTCINT problem on Windows >> >> Hi, >> >> this got fixed in the trunk. Can you try without -p? >> >> Cheers, Axel. >> >> Lynch, Michael (STFC,RAL,PPD) wrote on 09/07/2009 05:35 PM: >>> Hello, >>> >>> Sorry, that call to rootcint should of course read, >>> >>> rootcint -f MyDict.cxx -c -p RootSession.hpp RootSessionField.hpp >>> LinkDef.h >>> >>> which is what I am running on both Windows and Linux. >>> >>> This doesn't change the underlying problem whatsoever. >>> >>> Regards, >>> >>> Mike >>> >>> -----Original Message----- >>> From: owner-roottalk_at_root.cern.ch

> [mailto:owner-roottalk_at_root.cern.ch]
>>> On Behalf Of Lynch, Michael (STFC,RAL,PPD)
>>> Sent: 07 September 2009 16:30
>>> To: roottalk_at_root.cern.ch
>>> Subject: [ROOT] ROOTCINT problem on Windows
>>>
>>> Hello,
>>>
>>> I'm working on a project (a DLL/shared object) that tries to create
>>> TTrees with branches of type std::vector<float/int/double/bool>,
>>> std::vector<TVector3> and std::vector<TLorentzVector>.
>>>
>>> I'm running ROOT v5.24/00 on Windows XP SP3 and Microsoft C++

> compiler
>>> v15.00.30729.01 (from MS Visual C++ 2008 Express). This project works
>>> fine on Scientific Linux 4.4 and ROOT v5.24, but I'd like to be able
>> to
>>> target both platforms.
>>>
>>> I have to run
>>>
>>> rootcint -f MyDict.cxx -c -p RootSession.cpp RootSessionField.cpp
>>> LinkDef.h
>>>
>>> so that ROOT can write the trees with vector<TVector3> etc (I've
>>> attached my LinkDef.h, in case that's useful). The resulting files

> are
>>> then compiled into my main shared object, which works fine on Linux.
>>> However, on Windows, with exactly the same call, rootcint crashes. I
>>> definitely have full read/write permissions for this folder, which
>> seems
>>> to have been an issue that's tripped other people up.
>>>
>>> The culprit seems to be the -c argument. Without it, rootcint does

> not
>>> crash, but still does not work and prints a warning instead:
>>>
>>> If I run rootcint -f MyDict.cxx RootSession.cpp RootSessionField.cpp
>>> LinkDef.h, I get the warning 
>>>
>>> Limitation: Reference member not supported. Please use pointer
>>> D:/root/include\T
>>> GenericClassInfo.h(36)
>>>
>>> Whereas if I run rootcint -f MyDict.cxx -p RootSession.cpp
>>> RootSessionField.cpp LinkDef.h, I get 
>>>
>>> 2254010_cint.cxx
>>> D:/root/cint/cint/include\limits.h(8) : fatal error C1017: invalid
>>> integer const
>>> ant expression
>>> Error: external preprocessing failed. (0)
>>>
>>> Either way, it seems the -c argument is necessary (and indeed, my

> code
>>> works perfectly on Linux).
>>>
>>> Is this a known issue that I've missed in the forums? Can anyone

> offer
>>> an explanation/solution?
>>>
>>> Regards,
>>>
>>> Mike
>>>
>>>
>> --
>> Scanned by iCritical.
>>

> --
> Scanned by iCritical.
>
Received on Mon Sep 14 2009 - 15:53:29 CEST

This archive was generated by hypermail 2.2.0 : Mon Sep 14 2009 - 17:50:03 CEST