#16 another linux build bug

open
nobody
None
5
2005-01-14
2005-01-14
need to know
No

The build environment for this software seems extremely
fragile, and in particular I could not get it to compile on
Redhat Enterprise WS 3. The compiler I am using is g++
3.0.3 and the error occurs in libtool (which is itself
machine generated glop of 7,343 lines).

I think this package looks pretty shaky on linux, given
the complexity of the build environment.

error message from make (after using configure.gcc)

Making all in src
make[2]: Entering directory
`/idup2.3/user/bayes/openPNL/PNL/c_pgmtk/src'
/bin/sh ../../libtool --mode=link g++ -g -O2 -o
libpnl.la -rpath /usr/local/lib -no-undefined -version-info
23:0:0 -release 0.2 @LD_FLAGS@ cvcart.lo cvsvd.lo
dbginfo.lo memtrack.lo pnl1_5SliceInferenceEngine.lo
pnl1_5SliceJtreeInferenceEngine.lo pnl2DBitwiseMatrix.lo
pnl2DNumericDenseMatrix.lo pnl2TBNInferenceEngine.lo
pnl2TPFInferenceEngine.lo pnlAllocator.lo
pnlBayesLearningEngine.lo pnlBicLearningEngine.lo
pnlBKInferenceEngine.lo pnlBNet.lo
pnlCondGaussianDistribFun.lo
pnlCondSoftMaxDistribFun.lo pnlConfig.lo pnlContext.lo
pnlContextPersistence.lo pnlCoverage.lo pnlCPD.lo
pnlDAG.lo pnlDBN.lo pnlDenseMatrix.lo pnlDistribFun.lo
pnlDynamicGraphicalModel.lo
pnlDynamicInferenceEngine.lo
pnlDynamicLearningEngine.lo pnlEmLearningEngine.lo
pnlEmLearningEngineDBN.lo pnlEvidence.lo
pnlExampleModels.lo pnlException.lo
pnlExInferenceEngine.lo pnlFactor.lo pnlFactorGraph.lo
pnlFactors.lo pnlFakePtr.lo
pnlFGSumMaxInferenceEngine.lo pnlGaussianCPD.lo
pnlGaussianDistribFun.lo pnlGaussianPotential.lo
pnlGibbsSamplingInferenceEngine.lo
pnlGibbsWithAnnealingInferenceEngine.lo pnlGraph.lo
pnlGraphicalModel.lo pnli2DNumericDenseMatrix.lo
pnlIDNet.lo pnlIDPotential.lo pnlIDTabularPotential.lo
pnlInferenceEngine.lo pnliNumericDenseMatrix.lo
pnliNumericSparseMatrix.lo pnlJtreeInferenceEngine.lo
pnlJunctionTree.lo pnlLearningEngine.lo
pnlLIMIDInfEngine.lo pnlLog.lo pnlLogDriver.lo
pnlLogMultiplexor.lo pnlLogUsing.lo
pnlLWSamplingInferenceEngine.lo pnlMatrix.lo
pnlMatrixIterator.lo pnlMixtureGaussianCPD.lo
pnlMlDynamicStructLearn.lo pnlMlStaticStructLearn.lo
pnlMlStaticStructLearnHC.lo pnlMNet.lo
pnlModelDomain.lo pnlMRF2.lo pnlNaiveInferenceEngine.lo
pnlNodeType.lo pnlNodeValues.lo
pnlNumericDenseMatrix.lo pnlObject.lo pnlObjHandler.lo
pnlParConfig.lo pnlParEmLearningEngine.lo
pnlParGibbsSamplingInferenceEngine.lo
pnlParJtreeInferenceEngine.lo pnlParNewDelete.lo
pnlParPearlInferenceEngine.lo pnlPearlInferenceEngine.lo
pnlPersistCover.lo pnlPersistCPD.lo pnlPersistDistribFun.lo
pnlPersistence.lo pnlPersistGraph.lo pnlPersistModel.lo
pnlPersistModelDomain.lo pnlPersistTypes.lo pnlpnlType.lo
pnlPotential.lo pnlReferenceCounter.lo pnlRng.lo
pnlSamplingInferenceEngine.lo pnlScalarDistribFun.lo
pnlScalarPotential.lo pnlSoftMaxCPD.lo
pnlSoftMaxDistribFun.lo pnlSparseMatrix.lo
pnlSpecPearlInferenceEngine.lo
pnlStaticGraphicalModel.lo pnlStaticLearningEngine.lo
pnlStaticStructLearnSEM.lo pnlString.lo pnlTabularCPD.lo
pnlTabularDistribFun.lo pnlTabularPotential.lo pnlTimer.lo
pnlTreeCPD.lo pnlTreeDistribFun.lo pnlXMLRead.lo -ldl -lm
g++ -shared -nostdlib /usr/lib/gcc-lib/i686-pc-linux-
gnu/3.0.3/../../../crti.o /usr/lib/gcc-lib/i686-pc-linux-
gnu/3.0.3/crtbeginS.o .libs/cvcart.o .libs/cvsvd.o .libs/d
bginfo.o .libs/memtrack.o .libs/pnl1_5SliceInferenceEngine
.o .libs/pnl1_5SliceJtreeInferenceEngine.o .libs/pnl2DBitwi
seMatrix.o .libs/pnl2DNumericDenseMatrix.o .libs/pnl2TBNI
nferenceEngine.o .libs/pnl2TPFInferenceEngine.o .libs/pnl
Allocator.o .libs/pnlBayesLearningEngine.o .libs/pnlBicLear
ningEngine.o .libs/pnlBKInferenceEngine.o .libs/pnlBNet.o .
libs/pnlCondGaussianDistribFun.o .libs/pnlCondSoftMaxDist
ribFun.o .libs/pnlConfig.o .libs/pnlContext.o .libs/pnlConte
xtPersistence.o .libs/pnlCoverage.o .libs/pnlCPD.o .libs/pnl
DAG.o .libs/pnlDBN.o .libs/pnlDenseMatrix.o .libs/pnlDistrib
Fun.o .libs/pnlDynamicGraphicalModel.o .libs/pnlDynamicIn
ferenceEngine.o .libs/pnlDynamicLearningEngine.o .libs/pnl
EmLearningEngine.o .libs/pnlEmLearningEngineDBN.o .libs/
pnlEvidence.o .libs/pnlExampleModels.o .libs/pnlException.
o .libs/pnlExInferenceEngine.o .libs/pnlFactor.o .libs/pnlFa
ctorGraph.o .libs/pnlFactors.o .libs/pnlFakePtr.o .libs/pnlF
GSumMaxInferenceEngine.o .libs/pnlGaussianCPD.o .libs/p
nlGaussianDistribFun.o .libs/pnlGaussianPotential.o .libs/pn
lGibbsSamplingInferenceEngine.o .libs/pnlGibbsWithAnneali
ngInferenceEngine.o .libs/pnlGraph.o .libs/pnlGraphicalMod
el.o .libs/pnli2DNumericDenseMatrix.o .libs/pnlIDNet.o .libs
/pnlIDPotential.o .libs/pnlIDTabularPotential.o .libs/pnlInfe
renceEngine.o .libs/pnliNumericDenseMatrix.o .libs/pnliNum
ericSparseMatrix.o .libs/pnlJtreeInferenceEngine.o .libs/pn
lJunctionTree.o .libs/pnlLearningEngine.o .libs/pnlLIMIDInf
Engine.o .libs/pnlLog.o .libs/pnlLogDriver.o .libs/pnlLogMult
iplexor.o .libs/pnlLogUsing.o .libs/pnlLWSamplingInference
Engine.o .libs/pnlMatrix.o .libs/pnlMatrixIterator.o .libs/pnl
MixtureGaussianCPD.o .libs/pnlMlDynamicStructLearn.o .lib
s/pnlMlStaticStructLearn.o .libs/pnlMlStaticStructLearnHC
.o .libs/pnlMNet.o .libs/pnlModelDomain.o .libs/pnlMRF2.o .
libs/pnlNaiveInferenceEngine.o .libs/pnlNodeType.o .libs/p
nlNodeValues.o .libs/pnlNumericDenseMatrix.o .libs/pnlObj
ect.o .libs/pnlObjHandler.o .libs/pnlParConfig.o .libs/pnlPar
EmLearningEngine.o .libs/pnlParGibbsSamplingInferenceEn
gine.o .libs/pnlParJtreeInferenceEngine.o .libs/pnlParNewD
elete.o .libs/pnlParPearlInferenceEngine.o .libs/pnlPearlInf
erenceEngine.o .libs/pnlPersistCover.o .libs/pnlPersistCPD.
o .libs/pnlPersistDistribFun.o .libs/pnlPersistence.o .libs/pn
lPersistGraph.o .libs/pnlPersistModel.o .libs/pnlPersistMode
lDomain.o .libs/pnlPersistTypes.o .libs/pnlpnlType.o .libs/p
nlPotential.o .libs/pnlReferenceCounter.o .libs/pnlRng.o .li
bs/pnlSamplingInferenceEngine.o .libs/pnlScalarDistribFun.
o .libs/pnlScalarPotential.o .libs/pnlSoftMaxCPD.o .libs/pnl
SoftMaxDistribFun.o .libs/pnlSparseMatrix.o .libs/pnlSpecP
earlInferenceEngine.o .libs/pnlStaticGraphicalModel.o .libs
/pnlStaticLearningEngine.o .libs/pnlStaticStructLearnSEM.
o .libs/pnlString.o .libs/pnlTabularCPD.o .libs/pnlTabularDis
tribFun.o .libs/pnlTabularPotential.o .libs/pnlTimer.o .libs/p
nlTreeCPD.o .libs/pnlTreeDistribFun.o .libs/pnlXMLRead.o -
Wl,--whole-archive /usr/lib/libstdc++.a -Wl,--no-whole-
archive -L/tmp/gcc3/v3/gcc-build/gcc -
L/tmp/gcc3/v3/gcc-build/i686-pc-linux-gnu/libstdc++-
v3/src/.libs -L/tmp/gcc3/v3/gcc-build/i686-pc-linux-
gnu/libstdc++-v3/src -ldl -L/usr/lib/gcc-lib/i686-pc-linux-
gnu/3.0.3 -L/usr/lib/gcc-lib/i686-pc-linux-
gnu/3.0.3/../../.. -lm -lc -lgcc /usr/lib/gcc-lib/i686-pc-
linux-gnu/3.0.3/crtendS.o /usr/lib/gcc-lib/i686-pc-linux-
gnu/3.0.3/../../../crtn.o -Wl,-soname -Wl,libpnl-
0.2.so.23 -o .libs/libpnl-0.2.so.23.0.0
/usr/bin/ld: .libs/libpnl-0.2.so.23.0.0: undefined
versioned symbol name __frame_state_for@@GLIBC_2.0
/usr/bin/ld: failed to set dynamic section sizes: Bad value
collect2: ld returned 1 exit status
make[2]: *** [libpnl.la] Error 1
make[2]: Leaving directory
`/idup2.3/user/bayes/openPNL/PNL/c_pgmtk/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/idup2.3/user/bayes/openPNL/PNL/c_pgmtk'
make: *** [all-recursive] Error 1

Discussion