[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: DTrack_factory_ALT1




Hi Blake,

    Can you take a look at line 392 of the following file on your system:

/export/jana/jana_svn_daily_linux/include/JANA/JEventLoop.h

It should look like this:

        if(factories[i]->GetDataClassName() != 
T::static_className())continue;

If it has T::className() instead of T::static_className() then the file 
was somehow not updated to the latest version. If it *does* actually 
have T::static_className() then this may be a problem with the compiler 
(optimizations may be a prime suspect). In that case, please send me 
your operating system type, processor type, and gcc version so I can try 
and grab a similar system to try and reproduce the error.

   In the meantime, I have created a tarball of the latest release of 
JANA versioned 0.4.6. (This should be the same as your 0.4.5) and placed 
it on the JANA website. I have also tagged a release of the Hall-D 
source code which can be obtained via:

svn co https://halldsvn.jlab.org/repos/tags/release-2008-06-20

I just tried compiling these (JANA and HallD) on Fedora Core 6 and did 
not get your error.

Regards,
-David

Blake Leverington wrote:
> Hi David,
>
> I rebuilt xerces 2.7, changed $XERCESCROOT to that, rebuilt JANA 
> 0.4.5, and then attempted the HallD libraries again with the same 
> error from DTrack_factory_ALT1.cc. So I have no idea what's up. Hope 
> you can figure it out. I've been keeping track of all my steps for 
> what seems to work so at the end I should be able to do a clean build 
> on any system.
>
> Cheers,
> -Blake
>
> I rebuilt xerces
>
> David Lawrence wrote:
>>
>> Hi Blake,
>>
>>    Something seems inconsistent in your setup.  The change to JANA 
>> required to fix the error coming from DTrack_factory_ALT1.cc should 
>> be in your 0.4.5 version. This change was made right after the 0.4.4 
>> version. Could it be you have a stale JANA_HOME environment variable 
>> that is not pointing to your newest JANA installation?
>>
>>    I don't believe you should have to upgrade xerces.
>>
>>    Your difficulty does actually underline the increased need for 
>> stable releases of the HallD code. I recently started to get more 
>> serious about the versioning system for JANA and it seems it is also 
>> needed for the Hall-D source. I will try checking out and freshly 
>> building both JANA and Hall-D. If it compiles smoothly (or once I fix 
>> it) then I'll tag it and add a release note specifying the JANA 
>> version needed.
>>
>> Regards,
>> -David
>>
>> Blake Leverington wrote:
>>> Alright, so as I discovered to my surprise the is an older working 
>>> version of the HallD software on the cluster from 2006 that someone 
>>> kindly installed and a brand spanking new version of JANA as it 
>>> seems to update itself so I figured I'd just download the new 
>>> HDGeant source and upgrade that. (I saved the old version) But no 
>>> luck compiling the libraries. It compiles a lot of them but it gets 
>>> stuck on DTrack_factory_ALT1. If this is a JANA version problem, the 
>>> newest version 0.4.5 shouldn't cause this problem, should it? (I 
>>> checked the version with "jana --janaversion") I've pasted the 
>>> Makefile error below. Any ideas? I saw that xerces is version 2.6. 
>>> Should I attempt an upgrade on that too?
>>>
>>> Cheers,
>>> -Blake
>>>
>>> g++ -I. -I.. -I../include -I/export/gluex/include 
>>> -I/export/jana/jana_svn_daily_linux/include 
>>> -I/export/xerces/xerces-c-src_2_6_0/include -D_ROOT_ -pthread 
>>> -I/export/root-binaries/include -I/export/root-binaries/include -O2 
>>> -Wall   -c -o DTrack_factory_ALT1.o DTrack_factory_ALT1.cc
>>> /export/jana/jana_svn_daily_linux/include/JANA/JEventLoop.h: In 
>>> member function
>>>   `const T* jana::JEventLoop::FindByID(long unsigned int) [with T =
>>>   DTrackCandidate]':
>>> DTrack_factory_ALT1.cc:477:   instantiated from here
>>> /export/jana/jana_svn_daily_linux/include/JANA/JEventLoop.h:392: 
>>> cannot call
>>>   member function `virtual const char* DTrackCandidate::className() 
>>> const'
>>>   without object
>>> make[1]: *** [DTrack_factory_ALT1.o] Error 1
>>> rm DQuickFit.o DKalmanFilter.o DTrackCandidate_factory_FDCpseudo.o 
>>> DReferenceTrajectory.o DTrackCandidate_factory_CDC.o 
>>> DTrackHit_factory_MC.o DTrack_factory.o DRiemannFit.o 
>>> DTrackCandidate_factory_FDCCathodes.o DHoughFind.o 
>>> DTrackCandidate_factory_THROWN.o DMagneticFieldStepper.o 
>>> DTrackCandidate_factory.o DTrackCandidate_factory_FDC.o
>>> make[1]: Leaving directory `/export/gluex/src/libraries/TRACKING'
>>> make: *** [TRACKING] Error 2
>>>
>>>
>>>
>>

-- 

------------------------------------------------------------------------
  David Lawrence Ph.D.
  Staff Scientist                 Office: (757)269-5567   [[[  [   [ [       
  Jefferson Lab                   Pager:  (757)584-5567   [  [ [ [ [ [   
  http://www.jlab.org/~davidl     davidl@jlab.org         [[[  [[ [[ [[[
------------------------------------------------------------------------