Re: dictionary generation fails after ROOT v4.04 -> v5.12

From: Dr. John Krane <jkrane_at_netzero.com>
Date: Thu, 14 Dec 2006 14:31:43 -0600


Thank you Axel and Rene. It seems at some point I copied ROOT v4 into system library areas to make compiling against root libs "easier". I have now changed things to be more flexible and John-proof. Now that things are pointing to the right places ROOT is again behaving correctly.

Axel Naumann wrote:

>Hi John,
>
>check your %PATH% and %ROOTSYS%. Or rename the dir where your old root4
>installation is at until you figured out what you did wrong when
>installing root.
>
>Axel.
>
>Dr. John Krane wrote:
>
>
>>Hi everyone,
>>
>>If there has been any response to this, could you please re-send it to
>>me directly? I have suffered a terrible email accident... I have no
>>ability to view roottalk messages prior to now.
>>
>>Original message below.
>>
>> - John
>>-------------------------------------
>>
>>Hi,
>>
>>I decided to update my version of root from 4.04.02g to 5.12.00f.
>>Afterward, I tried to recompile some of my personal libraries and I get
>>failure for my classes that use dictionary files. For instance, my
>>Tree-writable date class fails with:
>>
>>[jkrane_at_cpc-tmt8a treeobj]$ make
>>g++ -g3 -Wall -fPIC
>>-I/data/z_packages_and_software/rpm_by_hand/root/current/root/include
>>-pthread
>>-I/data/z_packages_and_software/rpm_by_hand/root/current/root/include -c
>>ObjDate.cpp
>>Generating dictionary ObjDateCint.cpp...
>>g++ -g3 -Wall -fPIC
>>-I/data/z_packages_and_software/rpm_by_hand/root/current/root/include
>>-pthread
>>-I/data/z_packages_and_software/rpm_by_hand/root/current/root/include -c
>>ObjDateCint.cpp
>>ObjDateCint.cpp: In function `ROOT::TGenericClassInfo*
>>ROOT::GenerateInitInstance(const ObjDate*)':
>>ObjDateCint.cpp:53: error: no matching function for call to
>>`ROOT::TGenericClassInfo::TGenericClassInfo(const char[8], Version_t,
>>const char[10], int, const std::type_info&, const ROOT::TInitBehavior*,
>>void (*)(), TClass*(*)(const void*), int, unsigned int)'
>>/data/z_packages_and_software/rpm_by_hand/root/current/root/include/TGenericClassInfo.h:110:
>>
>>note: candidates are: ROOT::TGenericClassInfo::TGenericClassInfo()
>>/data/z_packages_and_software/rpm_by_hand/root/current/root/include/TGenericClassInfo.h:106:
>>
>>note: ROOT::TGenericClassInfo::TGenericClassInfo(const
>>ROOT::TGenericClassInfo&)
>>/data/z_packages_and_software/rpm_by_hand/root/current/root/include/TGenericClassInfo.h:68:
>>
>>note: ROOT::TGenericClassInfo::TGenericClassInfo(const
>>char*, Int_t, const char*, Int_t, const ROOT::TInitBehavior*, void
>>(*)(), Int_t)
>>/data/z_packages_and_software/rpm_by_hand/root/current/root/include/TGenericClassInfo.h:63:
>>
>>note: ROOT::TGenericClassInfo::TGenericClassInfo(const
>>char*, Int_t, const char*, Int_t, const std::type_info&, const
>>ROOT::TInitBehavior*, void (*)(), TVirtualIsAProxy*, Int_t, Int_t)
>>/data/z_packages_and_software/rpm_by_hand/root/current/root/include/TGenericClassInfo.h:57:
>>
>>note: ROOT::TGenericClassInfo::TGenericClassInfo(const
>>char*, Int_t, const char*, Int_t, const std::type_info&, const
>>ROOT::TInitBehavior*, void*, void (*)(), TVirtualIsAProxy*, Int_t, Int_t)
>>/data/z_packages_and_software/rpm_by_hand/root/current/root/include/TGenericClassInfo.h:51:
>>
>>note: ROOT::TGenericClassInfo::TGenericClassInfo(const
>>char*, const char*, Int_t, const std::type_info&, const
>>ROOT::TInitBehavior*, void*, void (*)(), TVirtualIsAProxy*, Int_t, Int_t)
>>ObjDateCint.cpp:55: error: invalid conversion from `void*(*)(Long_t)' to
>>`void*(*)(Long_t, void*)'
>>ObjDateCint.cpp:55: error: initializing argument 1 of `void
>>ROOT::TGenericClassInfo::SetNewArray(void*(*)(Long_t, void*))'
>>make: *** [ObjDateCint.o] Error 1
>>[jkrane_at_cpc-tmt8a treeobj]$
>>
>>Now, this failure did not occur under the old version of root. Has
>>TGenericClassInfo changed between the two versions of root? If so, I
>>don't understand how I could be getting the old version...but I see a
>>symptom that indicates that I have an incomplete install. Please see
>>the following screenshot of me launching ROOT. The "splash screen"
>>still says v4.04 in the corner!
>>
>>screenshot:
>>http://jkrane.home.comcast.net/temp_root_screenshot_emphasis.JPG
>>
>>Any ideas on how I can make a more-complete install? I'm stumped. I
>>did not specifiy a target directory for either install. My
>>config.status for each installation looks like:
>>
>>root_v4.04.02g
>>--with-mysql-incdir=/usr/include/mysql
>>--with-mysql-libdir=/usr/lib/mysql --enable-mysql
>>
>>root_v5.12.00f
>>--with-mysql-incdir=/usr/include/mysql
>>--with-mysql-libdir=/usr/lib/mysql --enable-mysql --enable-odbc
>>--enable-minuit2 --enable-mathcore --enable-mathmore --enable-roofit
>>
>> - John
>>
>>
>>
>>
>
>
>
>

-- 

Dr. John Krane
http://jkrane.home.comcast.net

Quantitative Financial Analyst
Received on Thu Dec 14 2006 - 21:31:55 MET

This archive was generated by hypermail 2.2.0 : Mon Jan 01 2007 - 16:32:02 MET