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

Re: Compilation error: DTrack_factory_ALT1.cc




Hi Mark,

    You are correct! You have seen this problem before. This came about 
when corresponding changes were committed to JANA and the Hall-D code, 
but only the Hall-D part was updated locally. The relevant log entry is 
below (see 5. specifically).

harriet:JANA>svn log -r318 JEventLoop.h
------------------------------------------------------------------------
r318 | davidl | 2008-04-21 16:38:20 -0400 (Mon, 21 Apr 2008) | 29 lines

This represents a major change in JANA. Here are the more important 
modifications:

1. jana namespace created. All JANA classes now reside in it and so
must be explicitly referenced via jana:: or "using namespace jana" must
be present.

2. Associated objects added to JObject.

3. Header files cleaned up to remove "using namespace XXX" statements.

4. Renamed dataClassName() with GetDataClassName() to make more consistent
with other accessor methods.

5. Replaced lots of calls to T::className() with calls to 
T::static_className().

6. Replaced HDCLASSDEF with JOBJECT_PUBLIC macro and moved into 
JObject.h (it
was in JFactory.h).

7. Replaced old system of printing objects which centered on JFactory_base
classes to one which relies on JObject::toStrings()

8. Removed TestProcessor, TestSource, and TestFactory plugins since these
all also existed in TestSpeed.


Not all of the JANA core library files have been reviewed here. This will
likely be done in the near future.


------------------------------------------------------------------------

Check that your JANA version is at least 0.4.6 or later.

Regards,
-David


Mark M. Ito wrote:
> Could have sworn I’ve seen this before. Fedora 9, gcc 4.3.0, halld tag 
> = 2008-06-20, jana version 0.4.6
> |
> g++ -I. -I.. -I../include 
> -I/usr/local/halld/release-2008-06-20/include 
> -I/usr/local/halld/release-2008-06-20/include 
> -I/usr/local/jana/prod/include -I/usr/local/xerces-c/prod/include 
> -D_ROOT_ -pthread -m32 -I/usr/local/root/prod/include 
> -I/usr/local/root/prod/include -O2 -Wall -c -o DTrack_factory_ALT1.o 
> DTrack_factory_ALT1.cc
> /usr/local/jana/prod/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
> /usr/local/jana/prod/include/JANA/JEventLoop.h:392: error: cannot call 
> member function ‘virtual const char* DTrackCandidate::className() 
> const’ without object
> make[4]: *** [DTrack_factory_ALT1.o] Error 1
> rm DTrackCandidate_factory.o DKalmanFilter.o 
> DTrackCandidate_factory_FDCpseudo.o DMagneticFieldStepper.o 
> DTrackCandidate_factory_THROWN.o DTrackCandidate_factory_CDC.o 
> DTrackHit_factory_MC.o DTrack_factory.o 
> DTrackCandidate_factory_FDCCathodes.o DHoughFind.o DQuickFit.o 
> DReferenceTrajectory.o DTrackCandidate_factory_FDC.o DRiemannFit.o
> make[4]: Leaving directory 
> `/usr/local/halld/release-2008-06-20/src/libraries/TRACKING’
> make[3]: *** [TRACKING] Error 2
> make[3]: Leaving directory 
> `/usr/local/halld/release-2008-06-20/src/libraries’
> make[2]: *** [libraries] Error 2
> make[2]: Leaving directory `/usr/local/halld/release-2008-06-20/src’
> make[1]: *** [make_halld] Error 2
> make[1]: Leaving directory `/usr/local/halld’
> make: *** [halld_make] 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         [[[  [[ [[ [[[
------------------------------------------------------------------------