I'm trying to make a dictionary for several classes. Some of them have includes which are in a separate directory. I have already successfully made a dictionary for the case where all relevant files are in the same directory with a rule in my makefile of the form ../src/EventCint.cxx:$(DIRINCFILES) @$(ROOTSYS)/bin/rootcint -f $(SRCDIR)$@ -c $+ where DIRINCFILES is a symbol set to the appropriate list of .h files and SRCDIR is just ../src/ (By the way, I don't know what the -f does. It's only in the rule because it also appears in the sample makefile in the Root web. The description of this option in the help file -- "set break file" -- is too terse for me.) The rule for the new dictionary (actually, one of several permutations I tried) is ../src/FastMCCint.cxx:$(DIRINCFILES) @echo "Generating dictionary ..." @$(ROOTSYS)/bin/rootcint -f -I $(EVENTIDIR) $(SRCDIR)/FastMCCint.cxx -c $+ EVENTIDIR is the same include path successfully used when compiling the classes. I get the following output: Generating dictionary ... Option -c must come directly after the output file gmake: *** [../src/FastMCCint.cxx] Error 1 The same thing happens if * I change the order of -f and -I $(EVENTIDIR) * I omit the -f * I leave no intervening space between -I and $(EVENTIDIR) * I use the absolute path rather than the symbol $(EVENTIDIR) However if I omit the -I option (or put it at the end of the command, contrary to the usage instructions) I get Generating dictionary ... Error: source file "Event.h" cannot open FILE:../src/RecModule.h LINE:6 Error: source file "McPart.h" cannot open FILE:../src/MCPartPrint.h LINE:8 Error: No symbol Event in current scope FILE:../src/MCPartPrint.h LINE:25 Error: source file "Event.h" cannot open FILE:../src/SmearTrack.h LINE:9 Error: source file "Track.h" cannot open FILE:../src/SmearTrack.h LINE:10 Error: source file "McPart.h" cannot open FILE:../src/SmearTrack.h LINE:11 gmake: *** [../src/FastMCCint.cxx] Segmentation Fault gmake: *** Deleting file `../src/FastMCCint.cxx' where, for example, RecModule.h is one of the source files, it includes Event.h, and Event.h can be found in $(EVENTIDIR) I'm using Root distribution 2.20/06 on Solaris: jrb@flora04 $ uname -a SunOS flora04 5.5.1 Generic_103640-20 sun4u sparc SUNW,Ultra-2 Any suggestions? Thanks in advance, Joanne Bogart jrb@slac.stanford.edu
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:28 MET