broken compiling of my class w/ ROOT 2.23/11

From: Stephen Bailey (bailey@physics.harvard.edu)
Date: Fri Mar 24 2000 - 22:04:47 MET


Hi.

I have a set of classes which used to compile and work fine
under ROOT 2.22/06.  With ROOT 2.23/11 they compile fine
but do not seem to work at all.  I am using Linux with the
KAI KCC 3.3e compiler.  I have simplified the failure down to
the following very simple class:

  // Frank.hh:
  #include <iostream.h>

  class Frank {
  public:
    void Print(void);
  };

  // Frank.cc:
  #include "Frank.hh"

  void Frank::Print(void) {
    cout << "Welcome to Frank." << endl;
  }

With ROOT 2.22/06 it works:

  root [0] .L Frank.so
  root [1] Frank f;
  root [2] f.Print();
  Welcome to Frank.

With ROOT 2.23/11 it compiles, but when I run it I get:

  root [0] .L Frank.so
  root [1] Frank f;
  Error: class,struct,union or type TProofServ not defined
  FILE:/tmp/filelFpgAX_cint LINE:1
  Error: No symbol TProofServ::IsActive() in current scope
  FILE:/tmp/filelFpgAX_cint LINE:1
  *** Interpreter error recovered ***
  Error: No symbol Frankf in current scope  FILE:/tmp/filelFpgAX_cint 
  LINE:1
  *** Interpreter error recovered ***

My Makefile is appended below.  Any help would be appreciated.

Thanks.

Stephen


# Makefile for Frank

ROOTLIBS      = -L$(ROOTSYS)/lib -lNew -lCint \
                -lGraf -lGraf3d -lHist -lHtml -lMatrix -lMinuit \
                -lPostscript -lProof -lRint -lTree
ROOTGLIBS     = -lGpad -lGui -lGX11 -lX3d

# Linux - KCC
CXX           = KCC
CXXFLAGS      = -g +K0 -O0 --no_exceptions -fPIC -I$(ROOTSYS)/include
LD            = KCC
LDFLAGS       = -g --no_exceptions
SOFLAGS       = --backend -shared
LIBS          = $(ROOTLIBS) -lm -ldl
GLIBS         = $(ROOTLIBS) $(ROOTGLIBS) -L/usr/X11R6/lib \
                -lXpm -lX11 -lm -ldl

HDRS    = Frank.hh
SRCS	= Frank.cc FrankDict.cc
OBJS	= Frank.o  FrankDict.o

PROGRAM	= Frank.so

all:		$(PROGRAM)
$(PROGRAM):	$(OBJS)
	@echo "Linking $(PROGRAM) ..."
	@/bin/rm -f $(PROGRAM)
	@$(LD) $(LDFLAGS) $(OBJS) $(GLIBS) -o $(PROGRAM)
	@chmod 555 $(PROGRAM)
	@echo "done"

clean:;	@/bin/rm -f $(OBJS) core
###
Frank.o: Frank.cc
FrankDict.o: FrankDict.cc

FrankDict.cc: $(HDRS)
	@echo "Generating Dictionary ..."
	@rootcint -f FrankDict.cc -c $(HDRS)



This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:22 MET