Re: [ROOT]: Gui, TCanvas, and mouse events

From: cstrato (cstrato@aon.at)
Date: Sat Feb 08 2003 - 20:41:42 MET


Dear Bertrand

Thank you, you are right. I forgot to change the Makefile
for MacOS X. Now I can compile the program but I am unable
to run it. I get either Permission denied or Segmentation fault:
[localhost:~/ROOT/rootcode/RootShower] cc% ./RootShower
./RootShower: Permission denied.
[localhost:~/ROOT/rootcode/RootShower] cc% chmod u+x RootShower
[localhost:~/ROOT/rootcode/RootShower] cc% ./RootShower
Segmentation fault

I am enclosing the changed Makefile. Is it possible that you
or a Mac expert could check if there is something wrong with it?

Thank you.

Best regards
Christian


Bertrand Bellenot wrote:

> Hello Christian,
> 
> As the problem seems to be at RootShower dictionary compilation, 
> Try to delete RootShowerDict.h and RootShowerDict.cxx, and then 
> recompile, so rootcint will recreate correct dictionaries. 
> 
> Cheers,
> Bertrand
> 
> ----- Original Message ----- 
> From: "cstrato" <cstrato@aon.at>
> To: <roottalk@pcroot.cern.ch>
> Sent: Friday, February 07, 2003 10:27 PM
> Subject: Re: [ROOT]: Gui, TCanvas, and mouse events
> 
> 
> 



#########################################

ARCH          = macosx

CXX           =
ObjSuf        = o
SrcSuf        = cxx
ExeSuf        =
DllSuf        = so
OutPutOpt     = -o 

ROOTCFLAGS   := $(shell root-config --cflags)
ROOTLIBS     := $(shell root-config --libs)
ROOTGLIBS    := $(shell root-config --glibs)
ROOTLIBDIR   := $(shell root-config --libdir)

CXX           = c++
CXXFLAGS      = -O -pipe -Wall
LD            = c++
LDFLAGS       = -O -Xlinker -bind_at_load -flat_namespace
# The SOFLAGS will be used to create the .dylib; the .so will
# be created separately
DllSuf        = dylib
SOFLAGS       = -dynamiclib -flat_namespace -undefined suppress

CXXFLAGS     += $(ROOTCFLAGS)
LIBS          = $(ROOTLIBS) $(SYSLIBS)
GLIBS         = $(ROOTGLIBS) $(SYSLIBS)

#########################################

ROOTSHOWERS  := $(wildcard *.cxx) RootShowerDict.$(SrcSuf)
ROOTSHOWERO  := $(ROOTSHOWERS:.cxx=.o)
ROOTSHOWER    = RootShower$(ExeSuf)

OBJS          = $(ROOTSHOWERO)

PROGRAMS      = $(ROOTSHOWER)

#########################################

.SUFFIXES: .$(SrcSuf) .$(ObjSuf) .$(DllSuf)

all:            $(PROGRAMS)

$(ROOTSHOWER):     $(ROOTSHOWERO)
		$(LD) $(LDFLAGS) $^ $(GLIBS) -lEG $(OutPutOpt)$@
# We need to make both the .dylib and the .so
#		$(LD) $(SOFLAGS) $^ $(OutPutOpt) $@
		$(LD) -bundle -undefined suppress -Wl,-x $(LDFLAGS) $^ \
		   $(OutPutOpt) $(subst .$(DllSuf),.so,$@)
		@echo "$@ done"

RootShowerDict.$(SrcSuf): MyParticle.h MyDetector.h MyEvent.h RSLinkDef.h
		@echo "Generating dictionary $@..."
		@rootcint -f $@ -c $^

#########################################

.$(SrcSuf).$(ObjSuf):
		$(CXX) $(CXXFLAGS) -c $<

#########################################



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:09 MET