Had a chat with David about his proposed structure. Sounds pretty good. Here is his email:

-- This table is the main index. It contains metadata for all calibration items.
-- The "id" and "tablename" values from here uniquely identify a set of constants
-- for the specified namepath.
--
-- Tables that contain the actual constants are defined as needed but all MUST
-- contain a "mainindex_id" column of type int that holds the id of the entry
-- in the MainIndex table to which the constants are associated.
--
-- The "context" field can be used to tag the entry as part of a special set of
-- constants. A context may be applied to a complete set of calibration constants
-- or only to a small subset. See the comments for the ContextLinks table below

CREATE TABLE IF NOT EXISTS MainIndex (
	id				int PRIMARY KEY AUTO_INCREMENT,
	namepath		TEXT NOT NULL,
	created		datetime,
	author		char(255) NOT NULL,
	tablename	char(64) NOT NULL,
	run_min		int,
	run_max		int,
	context		char(255)
);

-- Comments related to entries in the MainIndex table

CREATE TABLE IF NOT EXISTS MainIndex_comments (
	mainindex_id	int,
	comment			LONGTEXT NOT NULL,
	created			datetime,
	author			char(255) NOT NULL
);

-- This table contains the dependancy of contexts on one another. The idea
-- is the following: If a set of constants is requested from the MainIndex
-- and none with the specified context is found, one can query the ContextLinks
-- table for another context by which to search for the values. Eventually,
-- one should get down to the default context.

CREATE TABLE IF NOT EXISTS ContextLinks (
	id				int PRIMARY KEY AUTO_INCREMENT,
	context		char(255),
	based_on		char(255)
);

-- Comments related to entries in the ContextLinks table

CREATE TABLE IF NOT EXISTS ContextLinks_comments (
	contextlinks_id	int,
	comment				LONGTEXT NOT NULL,
	created				datetime,
	author				char(255) NOT NULL
);

Tables containing data would have descriptive column names, rows would be the sets of constants. This results in a name/value pair structure that can be retrieved in a STL map. It also is consistent with a standard ascii format that we already use in the file-based version of the current calib tree. New constants can be initially created in an ascii tree and then imported to the the database and vice-versa. If the appropriate table for the data does not exist, there is a standard way to create it.

Looking at the locked depends error (6 and 6a in previous post) where repeated makes require removal of depends directory before success. Seems the “no rule” is related to the depends making rule having a target that is not really made.

Made a branch to explore this branches/src/BMS-depends-by-include.

Some features of the current scheme:

  • Change in file does not trigger re-make of dependency file. Original include of DF says “no need to remake target file”. Subsequent make of DEPS says DF “was considered already”.
  • If depends directory exists but without depends file, make fails: no rule to make…
  • If depends directory non-existent, all dependency file includes fail, but don’t care. Then DEPS target makes all dependencies. This is good.
  • There is no rule to make depends files in-situ. DEPS target will make them.
  • Subsequent makes do not redo DEPS target because targets are satisfied by VPATH and remake deemed not necessary, again DF “was considered already” at include time.
  • check-out from trunk
  • no environment set-up
  • cd src; make LOCAL_HALLD_HOME=1

error 1

/usr/bin/g++ -g -D_REENTRANT -I/home/marki/halld/gelhad_depends/src/include -I/include \
-I/home/marki/halld/gelhad_depends/include -c XString.cpp
In file included from XString.cpp:10:
XString.hpp:13:39: error: xercesc/util/XercesDefs.hpp: No such file or directory
XString.hpp:14:38: error: xercesc/util/XMLString.hpp: No such file or directory
XString.hpp:29: error: expected ',' or '...' before '*' token
XString.hpp:29: error: ISO C++ forbids declaration of 'XMLCh' with no type
XString.hpp:36: error: ISO C++ forbids declaration of 'XMLCh' with no type
XString.hpp:36: error: expected ';' before '*' token
XString.cpp:19: error: expected ',' or '...' before '*' token
XString.cpp:19: error: ISO C++ forbids declaration of 'XMLCh' with no type
XString.cpp: In constructor 'XString::XString(int)':
XString.cpp:22: error: 'x' was not declared in this scope
XString.cpp:24: error: 'xercesc' has not been declared
XString.cpp: At global scope:
XString.cpp:71: error: expected initializer before '*' token
XString.cpp: In member function 'void XString::dump()':
XString.cpp:107: error: 'XMLCh' was not declared in this scope
XString.cpp:107: error: 'x' was not declared in this scope
XString.cpp:107: error: expected primary-expression before ')' token
XString.cpp:108: error: 'xercesc' has not been declared
make[1]: *** [XString.o] Error 1
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Utilities/hddm'
make: *** [programs/Utilities/hddm] Error 2

Fix:

setenv GLUEX_TOP /home/gluex
setenv XERCESCROOT $GLUEX_TOP/xerces-c/prod

error 2

g++ -I. -I.. -I../include -I/home/marki/halld/gelhad_depends/include -I/home/marki/halld/gelhad_depends/include -D_FILE_OFFSET_BITS=64 -I/include -I/home/gluex/xerces-c/prod/include -D_ROOT_  -I -O2 -Wall   -c -o BCAL_init.o BCAL_init.cc
BCAL_init.cc:3:29: error: JANA/JEventLoop.h: No such file or directory
In file included from BCAL_init.cc:4:
DBCALMCResponse_factory.h:11:27: error: JANA/JFactory.h: No such file or directory
In file included from ../BCAL/DBCALMCResponse.h:11,
from DBCALMCResponse_factory.h:15,
from BCAL_init.cc:4:
../BCAL/DBCALGeometry.h:11:26: error: JANA/JObject.h: No such file or directory
In file included from DBCALMCResponse_factory.h:17,
from BCAL_init.cc:4:
../include/DRandom.h:11:21: error: TRandom.h: No such file or directory
In file included from ../BCAL/DBCALPhoton.h:14,
from DBCALPhoton_factory.h:18,
from BCAL_init.cc:7:
../include/DVector3.h:12:22: error: TVector3.h: No such file or directory
In file included from ../BCAL/DBCALPhoton.h:15,
from DBCALPhoton_factory.h:18,
from BCAL_init.cc:7:
../include/DLorentzVector.h:11:28: error: TLorentzVector.h: No such file or directory
DBCALMCResponse_factory.h:13: error: 'jana' is not a namespace-name
DBCALMCResponse_factory.h:13: error: expected namespace-name before ';' token
../BCAL/DBCALGeometry.h:13: error: 'jana' is not a namespace-name
../BCAL/DBCALGeometry.h:13: error: expected namespace-name before ';' token
../BCAL/DBCALGeometry.h:26: error: expected class-name before '{' token
../BCAL/DBCALGeometry.h:30: error: ISO C++ forbids declaration of 'JOBJECT_PUBLIC' with no type
../BCAL/DBCALGeometry.h:56: error: 'vector' has not been declared
../BCAL/DBCALGeometry.h:56: error: expected ',' or '...' before '<' token
../BCAL/DBCALGeometry.h: In member function 'void DBCALGeometry::toStrings(int) const':
../BCAL/DBCALGeometry.h:57: error: 'items' was not declared in this scope
../BCAL/DBCALGeometry.h:57: error: 'AddString' was not declared in this scope
../BCAL/DBCALMCResponse.h: At global scope:
../BCAL/DBCALMCResponse.h:15: error: 'jana' is not a namespace-name
../BCAL/DBCALMCResponse.h:15: error: expected namespace-name before ';' token
../BCAL/DBCALMCResponse.h:17: error: expected class-name before '{' token
../BCAL/DBCALMCResponse.h:20: error: ISO C++ forbids declaration of 'JOBJECT_PUBLIC' with no type
../BCAL/DBCALMCResponse.h:31: error: 'vector' has not been declared
../BCAL/DBCALMCResponse.h:31: error: expected ',' or '...' before '<' token
../BCAL/DBCALMCResponse.h: In member function 'void DBCALMCResponse::toStrings(int) const':
../BCAL/DBCALMCResponse.h:32: error: 'items' was not declared in this scope
../BCAL/DBCALMCResponse.h:32: error: 'AddString' was not declared in this scope
../include/DRandom.h: At global scope:
../include/DRandom.h:13: error: 'TRandom' does not name a type
DBCALMCResponse_factory.h:19: error: expected template-name before '<' token
DBCALMCResponse_factory.h:19: error: expected `{' before '<' token
DBCALMCResponse_factory.h:19: error: expected unqualified-id before '<' token
make[2]: *** [BCAL_init.o] Error 1
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries/BCAL'
make[1]: *** [BCAL] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries'
make: *** [libraries] Error 2

Fix:

setenv JANA_HOME $GLUEX_TOP/jana/prod

error 3

g++ -I. -I.. -I../include -I/home/marki/halld/gelhad_depends/include -I/home/marki/halld/gelhad_depends/include -D_FILE_OFFSET_BITS=64 -I/home/gluex/jana/prod/include -D_ROOT_  -I -O2 -Wall   -c -o BCAL_init.o BCAL_init.cc
In file included from DBCALMCResponse_factory.h:17,
                 from BCAL_init.cc:4:
../include/DRandom.h:11:21: error: TRandom.h: No such file or directory
In file included from ../BCAL/DBCALPhoton.h:14,
                 from DBCALPhoton_factory.h:18,
                 from BCAL_init.cc:7:
../include/DVector3.h:12:22: error: TVector3.h: No such file or directory
In file included from ../BCAL/DBCALPhoton.h:15,
                 from DBCALPhoton_factory.h:18,
                 from BCAL_init.cc:7:
../include/DLorentzVector.h:11:28: error: TLorentzVector.h: No such file or directory
../include/DRandom.h:13: error: 'TRandom' does not name a type
DBCALMCResponse_factory.h:55: error: 'DRandom' does not name a type
../include/DVector3.h:14: error: 'TVector3' does not name a type
../include/DLorentzVector.h:13: error: 'TLorentzVector' does not name a type
../BCAL/DBCALPhoton.h:32: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:34: error: 'DLorentzVector' does not name a type
../BCAL/DBCALPhoton.h:36: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:37: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:38: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:39: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:41: error: expected ',' or '...' before '&' token
../BCAL/DBCALPhoton.h:41: error: ISO C++ forbids declaration of 'DVector3' with no type
../BCAL/DBCALPhoton.h:43: error: expected ',' or '...' before '&' token
../BCAL/DBCALPhoton.h:43: error: ISO C++ forbids declaration of 'DLorentzVector' with no type
../BCAL/DBCALPhoton.h:45: error: expected ',' or '...' before '&' token
../BCAL/DBCALPhoton.h:45: error: ISO C++ forbids declaration of 'DVector3' with no type
../BCAL/DBCALPhoton.h:46: error: expected ',' or '...' before '&' token
../BCAL/DBCALPhoton.h:46: error: ISO C++ forbids declaration of 'DVector3' with no type
../BCAL/DBCALPhoton.h:47: error: expected ',' or '...' before '&' token
../BCAL/DBCALPhoton.h:47: error: ISO C++ forbids declaration of 'DVector3' with no type
../BCAL/DBCALPhoton.h:48: error: expected ',' or '...' before '&' token
../BCAL/DBCALPhoton.h:48: error: ISO C++ forbids declaration of 'DVector3' with no type
../BCAL/DBCALPhoton.h:63: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:65: error: 'DLorentzVector' does not name a type
../BCAL/DBCALPhoton.h:67: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:68: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:69: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h:70: error: 'DVector3' does not name a type
../BCAL/DBCALPhoton.h: In member function 'void DBCALPhoton::setShowerPosition(int)':
../BCAL/DBCALPhoton.h:41: error: 'm_position' was not declared in this scope
../BCAL/DBCALPhoton.h:41: error: 'vec3' was not declared in this scope
../BCAL/DBCALPhoton.h: In member function 'void DBCALPhoton::setLorentzMomentum(int)':
../BCAL/DBCALPhoton.h:43: error: 'm_p4' was not declared in this scope
../BCAL/DBCALPhoton.h:43: error: 'p4' was not declared in this scope
../BCAL/DBCALPhoton.h: In member function 'void DBCALPhoton::setFitLayPoint(int)':
../BCAL/DBCALPhoton.h:45: error: 'm_fitLayPoint' was not declared in this scope
../BCAL/DBCALPhoton.h:45: error: 'vec3' was not declared in this scope
../BCAL/DBCALPhoton.h: In member function 'void DBCALPhoton::setFitLayPointErr(int)':
../BCAL/DBCALPhoton.h:46: error: 'm_fitLayPointErr' was not declared in this scope
../BCAL/DBCALPhoton.h:46: error: 'vec3' was not declared in this scope
../BCAL/DBCALPhoton.h: In member function 'void DBCALPhoton::setFitLaySlope(int)':
../BCAL/DBCALPhoton.h:47: error: 'm_fitLaySlope' was not declared in this scope
../BCAL/DBCALPhoton.h:47: error: 'vec3' was not declared in this scope
../BCAL/DBCALPhoton.h: In member function 'void DBCALPhoton::setFitLaySlopeErr(int)':
../BCAL/DBCALPhoton.h:48: error: 'm_fitLaySlopeErr' was not declared in this scope
../BCAL/DBCALPhoton.h:48: error: 'vec3' was not declared in this scope
../BCAL/DBCALPhoton.h: In member function 'virtual void DBCALPhoton::toStrings(std::vector<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&) const':
../BCAL/DBCALPhoton.h:51: error: 'm_position' was not declared in this scope
../BCAL/DBCALPhoton.h:54: error: 'm_p4' was not declared in this scope
make[2]: *** [BCAL_init.o] Error 1
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries/BCAL'
make[1]: *** [BCAL] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries'
make: *** [libraries] Error 2

Fix:

setenv ROOTSYS $GLUEX_TOP/root/prod
setenv PATH $ROOTSYS/bin:$PATH
rehash

error 4

g++ -MM -MT ".lib/Linux_RHEL5-i686-gcc4.1.2/libHDGEOMETRY.a(DRootGeom.o)" -I/src -I/home/gluex/root/prod/include -I. -I.. -I../include -I/home/marki/halld/gelhad_depends/include -I/home/marki/halld/gelhad_depends/include -D_FILE_OFFSET_BITS=64 -I/home/gluex/jana/prod/include -D_ROOT_ -pthread -m32 -I/home/gluex/root/prod/include -I/home/gluex/root/prod/include -O2 -Wall DRootGeom.cc &gt; .depends/Linux_RHEL5-i686-gcc4.1.2/DRootGeom.d
DRootGeom.cc:9:22: error: hddsroot.h: No such file or directory
make[2]: *** [DRootGeom.d] Error 1
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries/HDGEOMETRY'
make[1]: *** [HDGEOMETRY] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries'
make: *** [libraries] Error 2

Does not repeat, empty depends file made. Instead get a repeatable error:

error 4a

g++ -I/src -I/home/gluex/root/prod/include -I. -I.. -I../include -I/home/marki/halld/gelhad_depends/include -I/home/marki/halld/gelhad_depends/include -D_FILE_OFFSET_BITS=64 -I/home/gluex/jana/prod/include -I/home/gluex/xerces-c/prod/include -D_ROOT_ -pthread -m32 -I/home/gluex/root/prod/include -I/home/gluex/root/prod/include -O2 -Wall   -c -o DRootGeom.o DRootGeom.cc
DRootGeom.cc:9:22: error: hddsroot.h: No such file or directory
DRootGeom.cc: In member function 'int DRootGeom::ReadMap(std::string, int)':
DRootGeom.cc:120: warning: converting to 'int' from 'double'
DRootGeom.cc:121: warning: converting to 'int' from 'double'
DRootGeom.cc: In member function 'void DRootGeom::InitDRGeom()':
DRootGeom.cc:228: error: 'hddsroot' was not declared in this scope
DRootGeom.cc: In member function 'jerror_t DRootGeom::FindMatTable(DVector3, double&amp;, double&amp;, double&amp;, double&amp;) const':
DRootGeom.cc:291: warning: converting to 'int' from 'double'
DRootGeom.cc:292: warning: converting to 'int' from 'double'
DRootGeom.cc: In member function 'jerror_t DRootGeom::FindMatTable(DVector3, double&amp;, double&amp;, double&amp;) const':
DRootGeom.cc:319: warning: converting to 'int' from 'double'
DRootGeom.cc:320: warning: converting to 'int' from 'double'
make[2]: *** [DRootGeom.o] Error 1
rm DMagneticFieldMapSpoiled.o DMagneticFieldMapParameterized.o DMagneticFieldMapConst.o DMaterialMap.o DGeometry.o DLorentzMapCalibDB.o DLorentzDeflections.o DMagneticFieldMapCalibDB.o DMaterial.o
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries/HDGEOMETRY'
make[1]: *** [HDGEOMETRY] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries'
make: *** [libraries] Error 2

Fix:

setenv HDDS_HOME $GLUEX_TOP/hdds/prod

error 5

/home/marki/halld/gelhad_depends/bin//hddm-c event.xml
/home/marki/halld/gelhad_depends/bin//hddm-c: error while loading shared libraries: libxerces-c.so.28: cannot open shared object file: No such file or directory
make[2]: *** [hddm_s.h] Error 127
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries/HDDM'
make[1]: *** [HDDM] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/libraries'
make: *** [libraries] Error 2

Fix:

setenv LD_LIBRARY_PATH $XERCESCROOT/lib

error 6

cpp -MM -MT ".lib/Linux_RHEL5-i686-gcc4.1.2/libgelhad.a(begran.o)" -DCERNLIB_MOTIF -D_GELH_ -DCERNLIB_TYPE -I.. -I. -I.. -I../include -I/home/marki/halld/gelhad_depends/include -I/home/marki/halld/gelhad_depends/include -I//include -I/usr/include/cernlib/ -Wall begran.F &gt; .depends/Linux_RHEL5-i686-gcc4.1.2/begran.d
begran.F:14:31: error: geant321/gcunit.inc: No such file or directory
make[4]: *** [begran.d] Error 1
make[4]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation/HDGeant/gelhad'
make[3]: *** [gelhad] Error 2
make[3]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation/HDGeant'
make[2]: *** [HDGeant] Error 2
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation'
make[1]: *** [Simulation] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs'
make: *** [programs] Error 2

does not repeat, instead gives

error 6a

make[4]: *** No rule to make target `.depends/Linux_RHEL5-i686-gcc4.1.2/bimsel.d', needed by `all'.  Stop.
make[4]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation/HDGeant/gelhad'
make[3]: *** [gelhad] Error 2
make[3]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation/HDGeant'
make[2]: *** [HDGeant] Error 2
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation'
make[1]: *** [Simulation] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs'
make: *** [programs] Error 2

which does repeat
Fix:
two modes: fixing after error 6 and fixing after error 6a, try mode after error 6a:
Fix:

setenv CERN $GLUEX_TOP/cernlib
setenv CERN_LEVEL 2006
setenv CERN_ROOT $CERN/$CERN_LEVEL

no make cleans: get error 6a
make clean in src/programs/Simulation/HDGeant/gelhad, fix takes

error 7

make[4]: cernlib: Command not found
g++  -L/home/gluex/hdds/prod/lib/Linux_RHEL5-i686-gcc4.1.2 -L/home/gluex/jana/prod/lib -L/home/marki/halld/gelhad_depends/lib/Linux_RHEL5-i686-gcc4.1.2 -L/home/marki/halld/gelhad_depends/lib/Linux_RHEL5-i686-gcc4.1.2 \
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o .obj/Linux_RHEL5-i686-gcc4.1.2/GetDOCA.o .obj/Linux_RHEL5-i686-gcc4.1.2/beamgen.o .obj/Linux_RHEL5-i686-gcc4.1.2/bintree.o .obj/Linux_RHEL5-i686-gcc4.1.2/calibDB.o .obj/Linux_RHEL5-i686-gcc4.1.2/cobrems.o .obj/Linux_RHEL5-i686-gcc4.1.2/fint.o .obj/Linux_RHEL5-i686-gcc4.1.2/gdrawp.o .obj/Linux_RHEL5-i686-gcc4.1.2/gltrac.o .obj/Linux_RHEL5-i686-gcc4.1.2/goptimize.o .obj/Linux_RHEL5-i686-gcc4.1.2/gpairg.o .obj/Linux_RHEL5-i686-gcc4.1.2/gsrotm.o .obj/Linux_RHEL5-i686-gcc4.1.2/gsstak.o .obj/Linux_RHEL5-i686-gcc4.1.2/gthion.o .obj/Linux_RHEL5-i686-gcc4.1.2/gtnext.o .obj/Linux_RHEL5-i686-gcc4.1.2/guhadr.o .obj/Linux_RHEL5-i686-gcc4.1.2/gukine.o .obj/Linux_RHEL5-i686-gcc4.1.2/guout.o .obj/Linux_RHEL5-i686-gcc4.1.2/guphad.o .obj/Linux_RHEL5-i686-gcc4.1.2/gustep.o .obj/Linux_RHEL5-i686-gcc4.1.2/guxcs.o .obj/Linux_RHEL5-i686-gcc4.1.2/gxcs.o .obj/Linux_RHEL5-i686-gcc4.1.2/gxint.o .obj/Linux_RHEL5-i686-gcc4.1.2/gxphys.o .obj/Linux_RHEL5-i686-gcc4.1.2/hddmInput.o .obj/Linux_RHEL5-i686-gcc4.1.2/hddmOutput.o .obj/Linux_RHEL5-i686-gcc4.1.2/hdgeant_f.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitBCal.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitCDC.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitCerenkov.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitFCal.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitFDC.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitFTOF.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitGCal.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitStart.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitTag.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitUPV.o .obj/Linux_RHEL5-i686-gcc4.1.2/memcheck.o .obj/Linux_RHEL5-i686-gcc4.1.2/savehits.o .obj/Linux_RHEL5-i686-gcc4.1.2/seteventid.o .obj/Linux_RHEL5-i686-gcc4.1.2/settofg.o .obj/Linux_RHEL5-i686-gcc4.1.2/storeTrajectory.o .obj/Linux_RHEL5-i686-gcc4.1.2/timel.o .obj/Linux_RHEL5-i686-gcc4.1.2/trapfpe.o .obj/Linux_RHEL5-i686-gcc4.1.2/uginit.o .obj/Linux_RHEL5-i686-gcc4.1.2/uglast.o .obj/Linux_RHEL5-i686-gcc4.1.2/vunit.o \
-lHDDM -lHDGEOMETRY -lhddsGeant3 -lJANA -L/sw/lib -lXm -L/usr/X11R6/lib -lXt -lgelhad -lhitutil -L/home/gluex/cernlib/2006/lib   -lgfortran -L/home/gluex/xerces-c/prod/lib -lxerces-c -L/home/gluex/root/prod/lib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lGui -pthread -lm -ldl -rdynamic -lThread -lMinuit -lGeom -lpthread \
-o .bin/Linux_RHEL5-i686-gcc4.1.2/bcal2nt
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o: In function `hrout':
bcal2nt.c:(.text+0x28): undefined reference to `hrout_'
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o: In function `hrend':
bcal2nt.c:(.text+0x5a): undefined reference to `hrend_'
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o: In function `hfnt':
bcal2nt.c:(.text+0x7d): undefined reference to `hfnt_'
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o: In function `hbname':
bcal2nt.c:(.text+0x1d5): undefined reference to `hbname_'
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o: In function `hbnt':
bcal2nt.c:(.text+0x22e): undefined reference to `hbnt_'
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o: In function `hropen':
bcal2nt.c:(.text+0x2a7): undefined reference to `hropen_'
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o: In function `hbset':
bcal2nt.c:(.text+0x2e8): undefined reference to `hbset_'
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o: In function `hlimit':
bcal2nt.c:(.text+0x30d): undefined reference to `hlimit_'
.obj/Linux_RHEL5-i686-gcc4.1.2/beamgen.o: In function `beamgen_':
beamgen.F:(.text+0x1a): undefined reference to `grndm_'
beamgen.F:(.text+0x3ab): undefined reference to `grndm_'
beamgen.F:(.text+0x88c): undefined reference to `grndm_'
beamgen.F:(.text+0x9cc): undefined reference to `grndm_'
beamgen.F:(.text+0xad0): undefined reference to `gsvert_'
beamgen.F:(.text+0xb0a): undefined reference to `gskine_'
.
. lots of error lines deleted
.
hitutil.F:(.text+0x1f7): undefined reference to `gmtod_'
hitutil.F:(.text+0x234): undefined reference to `gdtom_'
hitutil.F:(.text+0x268): undefined reference to `gdtom_'
hitutil.F:(.text+0x28a): undefined reference to `gmtod_'
collect2: ld returned 1 exit status
make[4]: *** [bcal2nt] Error 1
make[4]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation/HDGeant'
make[3]: *** [current_dir] Error 2
make[3]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation/HDGeant'
make[2]: *** [HDGeant] Error 2
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation'
make[1]: *** [Simulation] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs'
make: *** [programs] Error 2

Fix:
[souce="css"]
setenv PATH $CERN_ROOT/bin:$PATH
[/source]

error 8

g++  -L/home/gluex/hdds/prod/lib/Linux_RHEL5-i686-gcc4.1.2 -L/home/gluex/jana/prod/lib -L/home/marki/halld/gelhad_depends/lib/Linux_RHEL5-i686-gcc4.1.2 -L/home/marki/halld/gelhad_depends/lib/Linux_RHEL5-i686-gcc4.1.2 \
.obj/Linux_RHEL5-i686-gcc4.1.2/bcal2nt.o .obj/Linux_RHEL5-i686-gcc4.1.2/GetDOCA.o .obj/Linux_RHEL5-i686-gcc4.1.2/beamgen.o .obj/Linux_RHEL5-i686-gcc4.1.2/bintree.o .obj/Linux_RHEL5-i686-gcc4.1.2/calibDB.o .obj/Linux_RHEL5-i686-gcc4.1.2/cobrems.o .obj/Linux_RHEL5-i686-gcc4.1.2/fint.o .obj/Linux_RHEL5-i686-gcc4.1.2/gdrawp.o .obj/Linux_RHEL5-i686-gcc4.1.2/gltrac.o .obj/Linux_RHEL5-i686-gcc4.1.2/goptimize.o .obj/Linux_RHEL5-i686-gcc4.1.2/gpairg.o .obj/Linux_RHEL5-i686-gcc4.1.2/gsrotm.o .obj/Linux_RHEL5-i686-gcc4.1.2/gsstak.o .obj/Linux_RHEL5-i686-gcc4.1.2/gthion.o .obj/Linux_RHEL5-i686-gcc4.1.2/gtnext.o .obj/Linux_RHEL5-i686-gcc4.1.2/guhadr.o .obj/Linux_RHEL5-i686-gcc4.1.2/gukine.o .obj/Linux_RHEL5-i686-gcc4.1.2/guout.o .obj/Linux_RHEL5-i686-gcc4.1.2/guphad.o .obj/Linux_RHEL5-i686-gcc4.1.2/gustep.o .obj/Linux_RHEL5-i686-gcc4.1.2/guxcs.o .obj/Linux_RHEL5-i686-gcc4.1.2/gxcs.o .obj/Linux_RHEL5-i686-gcc4.1.2/gxint.o .obj/Linux_RHEL5-i686-gcc4.1.2/gxphys.o .obj/Linux_RHEL5-i686-gcc4.1.2/hddmInput.o .obj/Linux_RHEL5-i686-gcc4.1.2/hddmOutput.o .obj/Linux_RHEL5-i686-gcc4.1.2/hdgeant_f.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitBCal.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitCDC.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitCerenkov.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitFCal.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitFDC.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitFTOF.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitGCal.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitStart.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitTag.o .obj/Linux_RHEL5-i686-gcc4.1.2/hitUPV.o .obj/Linux_RHEL5-i686-gcc4.1.2/memcheck.o .obj/Linux_RHEL5-i686-gcc4.1.2/savehits.o .obj/Linux_RHEL5-i686-gcc4.1.2/seteventid.o .obj/Linux_RHEL5-i686-gcc4.1.2/settofg.o .obj/Linux_RHEL5-i686-gcc4.1.2/storeTrajectory.o .obj/Linux_RHEL5-i686-gcc4.1.2/timel.o .obj/Linux_RHEL5-i686-gcc4.1.2/trapfpe.o .obj/Linux_RHEL5-i686-gcc4.1.2/uginit.o .obj/Linux_RHEL5-i686-gcc4.1.2/uglast.o .obj/Linux_RHEL5-i686-gcc4.1.2/vunit.o \
-lHDDM -lHDGEOMETRY -lhddsGeant3 -lJANA -L/sw/lib -lXm -L/usr/X11R6/lib -lXt -lgelhad -lhitutil -L/home/gluex/cernlib/2006/lib /home/gluex/cernlib/2006/lib/libgeant321.a /home/gluex/cernlib/2006/lib/libpawlib.a /home/gluex/cernlib/2006/lib/liblapack3.a /home/gluex/cernlib/2006/lib/libblas.a /home/gluex/cernlib/2006/lib/libgraflib.a /home/gluex/cernlib/2006/lib/libgrafX11.a /home/gluex/cernlib/2006/lib/libgrafX11.a /home/gluex/cernlib/2006/lib/libpacklib.a /home/gluex/cernlib/2006/lib/libmathlib.a /home/gluex/cernlib/2006/lib/libkernlib.a -lX11 -lnsl -lcrypt -ldl  -lgfortran -L/home/gluex/xerces-c/prod/lib -lxerces-c -L/home/gluex/root/prod/lib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lGui -pthread -lm -ldl -rdynamic -lThread -lMinuit -lGeom -lpthread \
-o .bin/Linux_RHEL5-i686-gcc4.1.2/bcal2nt
/home/gluex/cernlib/2006/lib/libpacklib.a(kuinit.o): In function `k_getar':
kuinit.c:(.text+0x175): undefined reference to `getarg_'
collect2: ld returned 1 exit status
make[4]: *** [bcal2nt] Error 1
make[4]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation/HDGeant'
make[3]: *** [current_dir] Error 2
make[3]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation/HDGeant'
make[2]: *** [HDGeant] Error 2
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Simulation'
make[1]: *** [Simulation] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs'
make: *** [programs] Error 2

fix:

cp -v ~/halld/build_scripts/patches/getarg_fix/* programs/Simulation/HDGeant/

error 9

g++ -shared -L/home/gluex/jana/prod/lib -L/home/marki/halld/gelhad_depends/lib/Linux_RHEL5-i686-gcc4.1.2 -L/home/marki/halld/gelhad_depends/lib/Linux_RHEL5-i686-gcc4.1.2 \
.obj/Linux_RHEL5-i686-gcc4.1.2/DEventProcessor_acceptance_hists.o \
-lJANA -L/home/gluex/root/prod/lib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lGui -pthread -lm -ldl -rdynamic -lThread -lMinuit -lGeom -L/home/gluex/xerces-c/prod/lib -lxerces-c \
-o .lib/Linux_RHEL5-i686-gcc4.1.2/acceptance_hists.so
mkdir -p /home/marki/halld/gelhad_depends/lib/Linux_RHEL5-i686-gcc4.1.2
mkdir -p /home/marki/halld/gelhad_depends/include/acceptance_hists
install -p .lib/Linux_RHEL5-i686-gcc4.1.2/acceptance_hists.so /home/marki/halld/gelhad_depends/lib/Linux_RHEL5-i686-gcc4.1.2
install -p DEventProcessor_acceptance_hists.h /home/marki/halld/gelhad_depends/include/acceptance_hists
make[4]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Analysis/plugins/acceptance_hists'
make -C cdc_hists install
make[4]: Entering directory `/home/marki/halld/gelhad_depends/src/programs/Analysis/plugins/cdc_hists'
rootcint -f CDC_branch_Dict.cc -c  CDC_branch.h
rootcint: error while loading shared libraries: libCint.so: cannot open shared object file: No such file or directory
make[4]: *** [CDC_branch_Dict.cc] Error 127
make[4]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Analysis/plugins/cdc_hists'
make[3]: *** [cdc_hists] Error 2
make[3]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Analysis/plugins'
make[2]: *** [plugins] Error 2
make[2]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs/Analysis'
make[1]: *** [Analysis] Error 2
make[1]: Leaving directory `/home/marki/halld/gelhad_depends/src/programs'
make: *** [programs] Error 2

Fix:

setenv LD_LIBRARY_PATH  $ROOTSYS/lib:$LD_LIBRARY_PATH

success!

To get tasks with due dates to show up in the calendar, they have to be viewed at least once in the tasks side bar of the calendar page. Adding such a task from the gmail page is not sufficient.

  • XERCESCROOT needed for hdds
  • ROOTSYS needed for BCAL library
  • CERN and CERN_LEVEL needed by gelhad

This works on roentgen:

setenv XERCESCROOT /home/gluex/xerces-c/prod
setenv ROOTSYS /home/gluex/root/prod
setenv CERN /home/gluex/cernlib
setenv CERN_LEVEL 2006

what is the appropriate level of stuff to build by default?

  • make a default, have it over-ride-able
  • default : jana, hdds, halld
  • everything : everything
  • selection : in terms of actual build targets, e. g. xerces_build

Current draft is trunk/scripts/build_scripts/boot.csh. First attempt at documentation on wiki.

  • error when cernlib not defined, make of gelhad, define cernlib, remake, must delete .depends directory (at least that is sufficient)
  • tested stand-alone vs. standard versions, 1000 events particle gun at all angles, hdgeant, dumped hddm file diffed resulting xml identical results
  • had to use revision 5782 of trunk to get agreement with branches/src-no-hdds
  • copy was made onto branch starting at revision 5783
  • explanation of change and how to use it posted on wiki
svn checkout $HDSVN/trunk/src
cd src
svn merge -r5782:HEAD $HDSVN/branches/src-no-hdds --dry-run
  • It is sufficient to delete a directory using its url. All files inside of the directory will be deleted as well.
  • Directory can also be deleted by marking it (svn rm dirname) and then checking in the change (cvs ci dirname). Note that unlike CVS, you should not delete the files yourself. Otherwise you ge an error like:
    > svn ci -m "after explicit delete" dir_togo3
    svn: Commit failed (details follow):
    svn: Entry for '/home/scratch/del_test/svn_test/dir_togo3' has no URL
    
  • To get log information or to list a deleted directory, you have to have a working version of it. That can be created using an appropriate revision switch (-r).
  • If you check out a version of a tree and a subdirectory gets deleted subsequently, an update of that tree will delete the directory and its contents in the working version.

Meeting page

    magnetic field reduction effects

    • David presents new hdparsim resolution for reduced field
    • review items on the meeting page

    eta

    • missing mass squared plot from Liping
    • using phase space generation for p gamma -> p eta pi^0
    • real distribution will have smaller average MM^2
    • 100,000 events go to 5 below 1 degree after fiducial and MM cuts
    • pawel shows missing mass, elastic
    • missing mass from high photon and opening angle
    • now pythia

    Did a test on a tarball of the “version 1″ hall D subversion repository. Worked fine using a 1.4.2 command-line client using the “file” method.

    • locked file
    • modified a checked out version
    • got error trying to check it in
    • unlocked file
    • was able to check it in
    • database must be reconstituted
    • wait for Elliott to look at the tomcat stuff
    • asked him about this on 8/11
    • emailed a ping 8/20
    • emailed another ping 8/28
    • Elliott says we are waiting on Marty 8/28
    • 9/8 talked to Marty he has some small problem to deal with URL resolution (?) for tomcat
    • pinged Marty, 10/13
    • forwarded Marty’s response (halld) to Elliott, 10/13
    • ping Elliott, 10/30
    • Elliott now waiting on Marty, 10/30
    • Talked to Marty, he will look into moving everything but Tomcat, 11/3
    • thinking we should punt on this, pursue new subversion version on current server 11/20
    • talked to Marty and Paul we will go to a new virtual server for halldsvn.jlab.org 11/24