ShaningSoul / pi-qmc

Automatically exported from code.google.com/p/pi-qmc
GNU General Public License v2.0
0 stars 0 forks source link

linking error, possibly its some blitz configure parameter differences #2

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
ubuntu 11.05 with everything up to date
successfully ran your binary release demos when I installed using ubuntu
packages installed as per :
http://code.google.com/p/pi-qmc/wiki/BuildInstall

However when I try to issue make
from your svn source :

     svn checkout http://pi-qmc.googlecode.com/svn/trunk/ pi

I'm getting :

./configure
make

...

make[2]: Leaving directory `/home/scott/src/pi_svn/lib'
Making all in src
make[2]: Entering directory `/home/scott/src/pi_svn/src'
/bin/bash ../libtool --tag=CXX   --mode=link g++ -I../lib -g -O2   -o pi 
pi-ActionChoice.o pi-ActionParser.o pi-AlternatingParticleChooser.o 
pi-AngularMomentumEstimator.o pi-AnisotropicNodes.o pi-AperiodicGaussian.o 
pi-AugmentedNodes.o pi-BeadFactory.o pi-BinProbDensity.o 
pi-BondLengthEstimator.o pi-BoxEstimator.o pi-CaoBerneAction.o pi-Collect.o 
pi-CollectiveMover.o pi-CompositeAction.o pi-CompositeDoubleAction.o 
pi-ConditionalDensityGrid.o pi-ConductanceEstimator.o 
pi-ConductivityEstimator.o pi-ConductivityEstimator2D.o pi-CoulombAction.o 
pi-CoulombEnergyEstimator.o pi-CountCountEstimator.o pi-CubicLattice.o 
pi-DampedFreeTensorMover.o pi-DensCountEstimator.o pi-DensDensEstimator.o 
pi-DensityEstimator.o pi-DiamagneticEstimator.o pi-DipoleMomentEstimator.o 
pi-DisplaceMoveSampler.o pi-DotGeomAction.o pi-DoubleActionChoice.o 
pi-DoubleDisplaceMoveSampler.o pi-DoubleMLSampler.o pi-DoubleParallelPaths.o 
pi-DoubleSectionChooser.o pi-DynamicPCFEstimator.o pi-EFieldAction.o 
pi-EIndEstimator.o pi-EMARateAction.o pi-EMARateEstimator.o pi-EMARateMover.o 
pi-EstimatorParser.o pi-EwaldAction.o pi-EwaldCoulombEstimator.o 
pi-EwaldImagePairAction.o pi-EwaldSum.o pi-ExchangeMover.o pi-ExcitonNodes.o 
pi-FixedNodeAction.o pi-FixedPhaseAction.o pi-FreeEnergyEstimator.o 
pi-FreeMover.o pi-FreeMoverPBC.o pi-FreePartNodesNoUpdate.o 
pi-FreeParticleNodes.o pi-FreeTensorMover.o pi-FrequencyEstimator.o 
pi-GateAction.o pi-GaussianAction.o pi-GaussianDotAction.o pi-GrapheneAction.o 
pi-GridPotential.o pi-GroundStateSNode.o pi-GroundStateWFNodes.o pi-Hungarian.o 
pi-HyperbolicAction.o pi-HyperbolicMover.o pi-ImagePairAction.o pi-JEstimator.o 
pi-JelliumSlab.o pi-MainParser.o pi-Measure.o pi-MiddleSectionChooser.o 
pi-ModelSampler.o pi-MultiLevelSampler.o pi-MultiSpeciesParticleChooser.o 
pi-NodeModel.o pi-NodeTester.o pi-NonZeroSectionChooser.o pi-OptEwaldSum.o 
pi-OpticalLatticeAction.o pi-PIMCParser.o pi-PairAction.o pi-PairChooser.o 
pi-PairDistance.o pi-PairIntegrator.o pi-PairPotential.o pi-ParallelPaths.o 
pi-ParticleChooser.o pi-PathReader.o pi-Paths.o pi-PeriodicGaussian.o 
pi-Permutation.o pi-PermutationChooser.o pi-PermutationEstimator.o 
pi-PositionEstimator.o pi-PrimAnisSHOAction.o pi-PrimColloidalAction.o 
pi-PrimCosineAction.o pi-PrimSHOAction.o pi-PrimShellAction.o 
pi-PrimTorusAction.o pi-PrimativePairAction.o pi-ProbDensityGrid.o 
pi-QPCAction.o pi-RandomNumGenerator.o pi-RandomPermutationChooser.o 
pi-RingGateAction.o pi-RingLattice.o pi-SHOAction.o pi-SHODotAction.o 
pi-SHONodes.o pi-SHOPhase.o pi-SHORealNodes.o pi-SectionChooser.o 
pi-SeedRandom.o pi-SerialPaths.o pi-SimInfoParser.o pi-SimInfoWriter.o 
pi-SimpleParticleChooser.o pi-SimulationInfo.o pi-SmoothedGridPotential.o 
pi-Species.o pi-SpeciesParticleChooser.o pi-SphereAction.o pi-Spin4DPhase.o 
pi-SpinChargeEstimator.o pi-SpringAction.o pi-SpringTensorAction.o 
pi-StillWebAction.o pi-StructReader.o pi-SuperCell.o pi-ThermoEnergyEstimator.o 
pi-TimpQPC.o pi-TradEwaldSum.o pi-TwoPairChooser.o pi-TwoQDAction.o 
pi-UniformMover.o pi-VIndEstimator.o pi-VirialEnergyEstimator.o 
pi-WalkingChooser.o pi-WellImageAction.o pi-WindingEstimator.o pi-WireEwald.o 
pi-WireNodes.o pi-WorkerShifter.o pi-WritePaths.o pi-WriteProbDensity.o 
pi-XMLParser.o pi-XMLUnitParser.o pi-XMLWriter.o pi-main.o assndx.o 
-L../lib/stats -lstats -L../lib/spin -lspin -L../lib/demo -ldemo -lfftw3 -lhdf5 
-lblitz -L/usr/lib -lgsl -lgslcblas -lm -lxml2 
libtool: link: g++ -I../lib -g -O2 -o pi pi-ActionChoice.o pi-ActionParser.o 
pi-AlternatingParticleChooser.o pi-AngularMomentumEstimator.o 
pi-AnisotropicNodes.o pi-AperiodicGaussian.o pi-AugmentedNodes.o 
pi-BeadFactory.o pi-BinProbDensity.o pi-BondLengthEstimator.o pi-BoxEstimator.o 
pi-CaoBerneAction.o pi-Collect.o pi-CollectiveMover.o pi-CompositeAction.o 
pi-CompositeDoubleAction.o pi-ConditionalDensityGrid.o 
pi-ConductanceEstimator.o pi-ConductivityEstimator.o 
pi-ConductivityEstimator2D.o pi-CoulombAction.o pi-CoulombEnergyEstimator.o 
pi-CountCountEstimator.o pi-CubicLattice.o pi-DampedFreeTensorMover.o 
pi-DensCountEstimator.o pi-DensDensEstimator.o pi-DensityEstimator.o 
pi-DiamagneticEstimator.o pi-DipoleMomentEstimator.o pi-DisplaceMoveSampler.o 
pi-DotGeomAction.o pi-DoubleActionChoice.o pi-DoubleDisplaceMoveSampler.o 
pi-DoubleMLSampler.o pi-DoubleParallelPaths.o pi-DoubleSectionChooser.o 
pi-DynamicPCFEstimator.o pi-EFieldAction.o pi-EIndEstimator.o 
pi-EMARateAction.o pi-EMARateEstimator.o pi-EMARateMover.o pi-EstimatorParser.o 
pi-EwaldAction.o pi-EwaldCoulombEstimator.o pi-EwaldImagePairAction.o 
pi-EwaldSum.o pi-ExchangeMover.o pi-ExcitonNodes.o pi-FixedNodeAction.o 
pi-FixedPhaseAction.o pi-FreeEnergyEstimator.o pi-FreeMover.o pi-FreeMoverPBC.o 
pi-FreePartNodesNoUpdate.o pi-FreeParticleNodes.o pi-FreeTensorMover.o 
pi-FrequencyEstimator.o pi-GateAction.o pi-GaussianAction.o 
pi-GaussianDotAction.o pi-GrapheneAction.o pi-GridPotential.o 
pi-GroundStateSNode.o pi-GroundStateWFNodes.o pi-Hungarian.o 
pi-HyperbolicAction.o pi-HyperbolicMover.o pi-ImagePairAction.o pi-JEstimator.o 
pi-JelliumSlab.o pi-MainParser.o pi-Measure.o pi-MiddleSectionChooser.o 
pi-ModelSampler.o pi-MultiLevelSampler.o pi-MultiSpeciesParticleChooser.o 
pi-NodeModel.o pi-NodeTester.o pi-NonZeroSectionChooser.o pi-OptEwaldSum.o 
pi-OpticalLatticeAction.o pi-PIMCParser.o pi-PairAction.o pi-PairChooser.o 
pi-PairDistance.o pi-PairIntegrator.o pi-PairPotential.o pi-ParallelPaths.o 
pi-ParticleChooser.o pi-PathReader.o pi-Paths.o pi-PeriodicGaussian.o 
pi-Permutation.o pi-PermutationChooser.o pi-PermutationEstimator.o 
pi-PositionEstimator.o pi-PrimAnisSHOAction.o pi-PrimColloidalAction.o 
pi-PrimCosineAction.o pi-PrimSHOAction.o pi-PrimShellAction.o 
pi-PrimTorusAction.o pi-PrimativePairAction.o pi-ProbDensityGrid.o 
pi-QPCAction.o pi-RandomNumGenerator.o pi-RandomPermutationChooser.o 
pi-RingGateAction.o pi-RingLattice.o pi-SHOAction.o pi-SHODotAction.o 
pi-SHONodes.o pi-SHOPhase.o pi-SHORealNodes.o pi-SectionChooser.o 
pi-SeedRandom.o pi-SerialPaths.o pi-SimInfoParser.o pi-SimInfoWriter.o 
pi-SimpleParticleChooser.o pi-SimulationInfo.o pi-SmoothedGridPotential.o 
pi-Species.o pi-SpeciesParticleChooser.o pi-SphereAction.o pi-Spin4DPhase.o 
pi-SpinChargeEstimator.o pi-SpringAction.o pi-SpringTensorAction.o 
pi-StillWebAction.o pi-StructReader.o pi-SuperCell.o pi-ThermoEnergyEstimator.o 
pi-TimpQPC.o pi-TradEwaldSum.o pi-TwoPairChooser.o pi-TwoQDAction.o 
pi-UniformMover.o pi-VIndEstimator.o pi-VirialEnergyEstimator.o 
pi-WalkingChooser.o pi-WellImageAction.o pi-WindingEstimator.o pi-WireEwald.o 
pi-WireNodes.o pi-WorkerShifter.o pi-WritePaths.o pi-WriteProbDensity.o 
pi-XMLParser.o pi-XMLUnitParser.o pi-XMLWriter.o pi-main.o assndx.o  
-L/home/scott/src/pi_svn/lib/stats 
/home/scott/src/pi_svn/lib/stats/.libs/libstats.a -L/usr/lib 
-L/home/scott/src/pi_svn/lib/spin 
/home/scott/src/pi_svn/lib/spin/.libs/libspin.a 
-L/home/scott/src/pi_svn/lib/demo 
/home/scott/src/pi_svn/lib/demo/.libs/libdemo.a /usr/lib/libfftw3.so 
/usr/lib/libhdf5.so -lpthread -lz /usr/lib/libblitz.so -lgsl -lgslcblas -lm 
/usr/lib/libxml2.so -pthread
pi-AnisotropicNodes.o: In function 
`AnisotropicNodes::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> 
const&, blitz::Array<blitz::TinyVector<double, 3>, 1> const&, 
blitz::Array<double, 2>&)':
/home/scott/src/pi_svn/src/AnisotropicNodes.cc:221: undefined reference to 
`dgetrf_'
/home/scott/src/pi_svn/src/AnisotropicNodes.cc:226: undefined reference to 
`dgetri_'
pi-AnisotropicNodes.o: In function 
`AnisotropicNodes::evaluateUpdate(blitz::Array<blitz::TinyVector<double, 3>, 1> 
const&, blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int)':
/home/scott/src/pi_svn/src/AnisotropicNodes.cc:254: undefined reference to 
`dgetrf_'
pi-AugmentedNodes.o: In function 
`AugmentedNodes::MatrixUpdate::evaluateChange(DoubleMLSampler const&, int)':
/home/scott/src/pi_svn/src/AugmentedNodes.cc:512: undefined reference to 
`dgetrf_'
pi-AugmentedNodes.o: In function 
`AugmentedNodes::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> const&, 
blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int, bool)':
/home/scott/src/pi_svn/src/AugmentedNodes.cc:145: undefined reference to 
`dgetrf_'
/home/scott/src/pi_svn/src/AugmentedNodes.cc:160: undefined reference to 
`dgetri_'
pi-CaoBerneAction.o: In function `CaoBerneAction::calcU(double) const':
/home/scott/src/pi_svn/src/CaoBerneAction.cc:81: undefined reference to `dgesv_'
pi-CollectiveMover.o: In function 
`CollectiveMover::calcInverseShift(blitz::TinyVector<double, 3> const&) const':
/home/scott/src/pi_svn/src/CollectiveMover.cc:159: undefined reference to 
`dgesv_'
pi-ExcitonNodes.o: In function 
`ExcitonNodes::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> const&, 
blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int, bool)':
/home/scott/src/pi_svn/src/ExcitonNodes.cc:110: undefined reference to `dgetrf_'
/home/scott/src/pi_svn/src/ExcitonNodes.cc:125: undefined reference to `dgetri_'
pi-FreePartNodesNoUpdate.o: In function 
`FreePartNodesNoUpdate::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> 
const&, blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int) const':
/home/scott/src/pi_svn/src/FreePartNodesNoUpdate.cc:179: undefined reference to 
`dgetrf_'
/home/scott/src/pi_svn/src/FreePartNodesNoUpdate.cc:186: undefined reference to 
`dgetri_'
pi-FreeParticleNodes.o: In function 
`FreeParticleNodes::MatrixUpdate::evaluateChange(DoubleMLSampler const&, int)':
/home/scott/src/pi_svn/src/FreeParticleNodes.cc:930: undefined reference to 
`dgetrf_'
pi-FreeParticleNodes.o: In function 
`FreeParticleNodes::getDet(blitz::Array<double, 2>&, double&)':
/home/scott/src/pi_svn/src/FreeParticleNodes.cc:527: undefined reference to 
`dgetrf_'
pi-FreeParticleNodes.o: In function 
`FreeParticleNodes::getDetInvMat(blitz::Array<double, 2>&, double&, 
blitz::Array<int, 2>&, int const&, int&, int&)':
/home/scott/src/pi_svn/src/FreeParticleNodes.cc:558: undefined reference to 
`dgetrf_'
/home/scott/src/pi_svn/src/FreeParticleNodes.cc:566: undefined reference to 
`dgetri_'
pi-FreeParticleNodes.o: In function 
`FreeParticleNodes::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> 
const&, blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int, bool)':
/home/scott/src/pi_svn/src/FreeParticleNodes.cc:125: undefined reference to 
`dgetrf_'
/home/scott/src/pi_svn/src/FreeParticleNodes.cc:141: undefined reference to 
`dgetri_'
pi-OptEwaldSum.o: In function `OptEwaldSum':
/home/scott/src/pi_svn/src/OptEwaldSum.cc:156: undefined reference to `dgetrf_'
/home/scott/src/pi_svn/src/OptEwaldSum.cc:161: undefined reference to `dgetrs_'
/home/scott/src/pi_svn/src/OptEwaldSum.cc:168: undefined reference to `dgetrs_'
/home/scott/src/pi_svn/src/OptEwaldSum.cc:171: undefined reference to `dgetrs_'
/home/scott/src/pi_svn/src/OptEwaldSum.cc:182: undefined reference to `dgesv_'
/home/scott/src/pi_svn/src/OptEwaldSum.cc:187: undefined reference to `dgetrs_'
pi-PairIntegrator.o: In function `PairIntegrator::vpolyfit(blitz::Array<double, 
1> const&, blitz::Array<std::complex<double>, 3> const&, 
blitz::Array<std::complex<double>, 2>&, blitz::Array<std::complex<double>, 2>&, 
blitz::Array<std::complex<double>, 2>&, blitz::Array<std::complex<double>, 3>&, 
blitz::Array<std::complex<double>, 3>&)':
/home/scott/src/pi_svn/src/PairIntegrator.cc:350: undefined reference to 
`dcopy_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:351: undefined reference to 
`dcopy_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:352: undefined reference to 
`dcopy_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:356: undefined reference to 
`dcopy_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:357: undefined reference to 
`dscal_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:359: undefined reference to 
`daxpy_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:360: undefined reference to 
`dcopy_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:361: undefined reference to 
`dscal_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:362: undefined reference to 
`dcopy_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:363: undefined reference to 
`dscal_'
/home/scott/src/pi_svn/src/PairIntegrator.cc:374: undefined reference to 
`daxpy_'
pi-PairIntegrator.o: In function `PairIntegrator::integrate(double, double)':
/home/scott/src/pi_svn/src/PairIntegrator.cc:243: undefined reference to 
`dgesv_'
pi-SHONodes.o: In function 
`SHONodes::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> const&, 
blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int, bool)':
/home/scott/src/pi_svn/src/SHONodes.cc:77: undefined reference to `dgetrf_'
/home/scott/src/pi_svn/src/SHONodes.cc:92: undefined reference to `dgetri_'
pi-SHOPhase.o: In function 
`SHOPhase::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> const&, 
blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int)':
/home/scott/src/pi_svn/src/SHOPhase.cc:99: undefined reference to `zgetrf_'
/home/scott/src/pi_svn/src/SHOPhase.cc:104: undefined reference to `zgetri_'
pi-SHORealNodes.o: In function 
`SHORealNodes::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> const&, 
blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int)':
/home/scott/src/pi_svn/src/SHORealNodes.cc:85: undefined reference to `zgetrf_'
/home/scott/src/pi_svn/src/SHORealNodes.cc:95: undefined reference to `zgetri_'
pi-WireEwald.o: In function `WireEwald::curveFit()':
/home/scott/src/pi_svn/src/WireEwald.cc:218: undefined reference to `dgetrf_'
/home/scott/src/pi_svn/src/WireEwald.cc:224: undefined reference to `dgetri_'
pi-WireNodes.o: In function 
`WireNodes::MatrixUpdate::evaluateChange(DoubleMLSampler const&, int)':
/home/scott/src/pi_svn/src/WireNodes.cc:338: undefined reference to `dgetrf_'
pi-WireNodes.o: In function 
`WireNodes::evaluate(blitz::Array<blitz::TinyVector<double, 3>, 1> const&, 
blitz::Array<blitz::TinyVector<double, 3>, 1> const&, int, bool)':
/home/scott/src/pi_svn/src/WireNodes.cc:122: undefined reference to `dgetrf_'
/home/scott/src/pi_svn/src/WireNodes.cc:137: undefined reference to `dgetri_'
assndx.o: In function `assndx':
/home/scott/src/pi_svn/src/assndx.f:24: undefined reference to 
`_gfortran_st_write'
/home/scott/src/pi_svn/src/assndx.f:24: undefined reference to 
`_gfortran_transfer_integer'
/home/scott/src/pi_svn/src/assndx.f:24: undefined reference to 
`_gfortran_transfer_integer'
/home/scott/src/pi_svn/src/assndx.f:24: undefined reference to 
`_gfortran_st_write_done'
collect2: ld returned 1 exit status
make[2]: *** [pi] Error 1
make[2]: Leaving directory `/home/scott/src/pi_svn/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/scott/src/pi_svn'
make: *** [all] Error 2
scott@khamtchatka ~/src/pi_svn $ 

uname -a
Linux khamtchatka 2.6.38-10-generic #46-Ubuntu SMP Tue Jun 28 15:05:41 UTC 2011 
i686 i686 i386 GNU/Linux

g++ --version
g++ (Ubuntu/Linaro 4.5.2-8ubuntu4) 4.5.2

... so looks like possibly a version mismatch of blitz
I am using the default ubuntu blitz package :

libblitz0-dev  which is blitz release  1:0.9-10

What version of blitz is known to work with your latest svn source ?
possibly its some blitz configure parameter differences

take care - Scott Stensland

Original issue reported on code.google.com by scottste...@gmail.com on 1 Aug 2011 at 5:27

GoogleCodeExporter commented 9 years ago
I'll handle this one.

Original comment by john.shumwayjr on 4 Aug 2011 at 2:23

GoogleCodeExporter commented 9 years ago
The blitz library uses the labs function, which requires cstdlib. In the past 
year or two, the newest gcc compilers catch the fact that cstdlib is not 
properly included in blitz, thus giving the error that std::labs cannot be 
found. While this is an error in blitz, it is widespread enough we should work 
around it. I've been patching our local copies of blitz, but this is not 
helpful for new users or on machines where we cannot modify blitz. I have just 
updated the acinclude.in file so that our configure script does an #include 
<cstdlib> before #include <blitz>, so the configure check should succeed  now. 
I have also explicitly included cstdlib before all blitz includes everywhere in 
the pi source code.

Original comment by john.shumwayjr on 4 Aug 2011 at 2:40