Re: [eigen] Linker error after updating from -betaX to 2.0.0

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Are you using trunk/, or the 2.0 branch, or the 2.0.0 tag ?

This issue happened in trunk a few days ago (so the branch and tag
should be unaffected).

So I assume that you are using trunk which FYI is not 2.0.0, it's
currently called 2.0.50.

However I thought i had fixed it in r918898 ? by adding inline keywords?

Gael: I can see that you just maked these functions "static inline" in
trunk, does this fix it? In the past we always maked global functions
just inline and it worked for us...

Cheers,
Benoit

2009/2/6 Benjamin Schindler <bschindler@xxxxxxxxxxxxxxx>:
> Hi
>
> I just updated to 2.0.0, and my code won't compile anymore, because of
> this:
>
> cd /home/benjamin/software/build/viewer-build/libsph && /usr/bin/cmake -E cmake_link_script CMakeFiles/sph.dir/link.txt --verbose=1
> /usr/bin/c++  -fPIC   -Wno-deprecated -g   -shared -Wl,-soname,libsph.so -o libsph.so CMakeFiles/sph.dir/Filters/vtkMergeVectorFilter.cpp.o CMakeFiles/sph.dir/Filters/vtkInterpolateAllFilter.cpp.o CMakeFiles/sph.dir/Filters/vtkCompositeDataToUnstructuredGridFilter.cpp.o CMakeFiles/sph.dir/Filters/vtkVortexCorelineExtractor.cpp.o CMakeFiles/sph.dir/Filters/vtkStreamLineGenerator.cpp.o CMakeFiles/sph.dir/Filters/vtkThreadedFilter.cpp.o CMakeFiles/sph.dir/Filters/vtkSPHResampler.cpp.o CMakeFiles/sph.dir/Filters/CandidateSelector.cpp.o CMakeFiles/sph.dir/Filters/TestCandidateSelector.cpp.o CMakeFiles/sph.dir/Filters/vtkSPHSurfaceGenerator.cpp.o CMakeFiles/sph.dir/Utils/SPHSampler.cpp.o CMakeFiles/sph.dir/Utils/CacheEntry.cpp.o CMakeFiles/sph.dir/Utils/vtkPointLocatorDerived.cpp.o CMakeFiles/sph.dir/Utils/vtkTemporalDataSetInterpolator.cpp.o CMakeFiles/sph.dir/Sources/vtkDamBreakSource.cpp.o CMakeFiles/sph.dir/Sources/vtkVortexRopeSource.cpp.o CMakeFiles/sph.dir/PredictorCorrector/PredictorCorrector.cpp.o CMakeFiles/sph.dir/PredictorCorrector/AbstractPredictorCorrector.cpp.o CMakeFiles/sph.dir/PredictorCorrector/AbstractParallelVectorsField.cpp.o CMakeFiles/sph.dir/PredictorCorrector/AbstractTemporalParallelVectorsField.cpp.o CMakeFiles/sph.dir/PredictorCorrector/LevyMethod.cpp.o CMakeFiles/sph.dir/PredictorCorrector/SujudiHaimes.cpp.o CMakeFiles/sph.dir/PredictorCorrector/FuchsMethod.cpp.o CMakeFiles/sph..dir/PredictorCorrector/WeinkaufMethod.cpp.o CMakeFiles/sph.dir/PredictorCorrector/FuchsMethodNoAcceleration.cpp.o CMakeFiles/sph.dir/PredictorCorrector/WeinkaufMethodNoAcceleration.cpp.o CMakeFiles/sph.dir/hdf5/vtkH5PartReader.cxx.o CMakeFiles/sph.dir/hdf5/vtkH5PartWriter.cxx.o CMakeFiles/sph.dir/hdf5/vtkH5SPHReader.cxx.o CMakeFiles/sph.dir/hdf5/vtkXMLParticleWriter.cxx.o CMakeFiles/sph.dir/hdf5/FileSeriesFinder.cpp.o CMakeFiles/sph.dir/Sources/vtkDamBreakHdf5Source.cpp.o -L/home/benjamin/env/lib/vtk-5.2 -lvtkIO -lvtkFiltering -lvtkGraphics /home/benjamin/env/lib/libhdf5.so /home/benjamin/env/lib/libH5Part.a -lvtkDICOMParser -lvtkNetCDF -lvtkmetaio -lvtksqlite -lvtkpng -lvtktiff -lvtkzlib -lvtkjpeg -lvtkexpat -lvtkFiltering -lvtkCommon -lvtksys -lpthread -ldl -lm -lvtkverdict -Wl,-rpath,/home/benjamin/env/lib/vtk-5.2:/home/benjamin/env/lib
> CMakeFiles/sph.dir/Filters/vtkSPHSurfaceGenerator.cpp.o: In function `Eigen::Scaling(float)':
> /usr/lib/gcc/i686-pc-linux-gnu/4.3.3/include/g++-v4/exception:59: multiple definition of `Eigen::Scaling(float)'
> CMakeFiles/sph.dir/Filters/vtkVortexCorelineExtractor.cpp.o:/home/benjamin/env/include/vtk-5.2/vtkOStreamWrapper.h:132: first defined here
> CMakeFiles/sph.dir/Filters/vtkSPHSurfaceGenerator.cpp.o: In function `Eigen::Scaling(double)':
> /home/benjamin/env/include/eigen2/Eigen/src/Geometry/Scaling.h:125: multiple definition of `Eigen::Scaling(double)'
> CMakeFiles/sph.dir/Filters/vtkVortexCorelineExtractor.cpp.o:/home/benjamin/env/include/eigen2/Eigen/src/Geometry/Scaling.h:125: first defined here
> CMakeFiles/sph.dir/PredictorCorrector/PredictorCorrector.cpp.o: In function `Eigen::Scaling(float)':
> /usr/lib/gcc/i686-pc-linux-gnu/4.3.3/include/g++-v4/exception:59: multiple definition of `Eigen::Scaling(float)'
> <-- snip - many more of those -->
> /usr/lib/gcc/i686-pc-linux-gnu/4.3.3/../../../../i686-pc-linux-gnu/bin/ld: warning: creating a DT_TEXTREL in object.
> collect2: ld returned 1 exit status
> make[2]: *** [libsph/libsph.so] Error 1
>
> I checked the file vtkOStreamWrapper.h and there is no Scaling definition there I would be able to spot.
> The people of the irc-C++-channel guessed wrong include guards, but there was none I could spot
>
> Any ideas what's causing this?
>
> Thanks
> Benjmain
>
>
>
>
>
>
>



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/