← Back to team overview

dolfin team mailing list archive

Re: linking error

 

Patrick Riesen wrote:
Johannes Ring wrote:
On Thu, Apr 15, 2010 at 6:53 PM, Riesen  Patrick
<priesen@xxxxxxxxxxxxxxx> wrote:
hi,

ldd on libdolfin.so gives


       linux-vdso.so.1 =>  (0x00007fffe6cd6000)
libboost_program_options.so.1.40.0 => /scratch/priesen/FEniCS/build/lib/libboost_program_options.so.1.40.0 (0x00007f2b6926d000) libboost_filesystem.so.1.40.0 => /scratch/priesen/FEniCS/build/lib/libboost_filesystem.so.1.40.0 (0x00007f2b69059000)
       libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00007f2b68ccb000)
liblapack.so.3gf => /usr/lib/atlas/liblapack.so.3gf (0x00007f2b681de000) libblas.so.3gf => /usr/lib/atlas/libblas.so.3gf (0x00007f2b67821000)
       libz.so.1 => /usr/lib/libz.so.1 (0x00007f2b6760a000)
[....]

so the boost shared libs are loaded, but there's another boost lib as

libboost_thread-gcc42-mt-1_34_1.so.1.34.1 => /usr/lib/libboost_thread-gcc42-mt-1_34_1.so.1.34.1 (0x00007ff99fc0d000)

I think it is CGAL that links to that library. Try to rebuild CGAL
with these two options:

  -D Boost_INCLUDE_DIR:PATH=/scratch/priesen/FEniCS/build/include
  -D Boost_LIBRARY_DIRS:FILEPATH=/scratch/priesen/FEniCS/build/lib

Johannes

strike! yes, my cgal cmake cache shows that's its linked to the wrong boost. i'll rebuild cgal correctly and hope that will fix the problem.

thank you very much, Johannes,

best regards,
patrick


it worked. all is fine now. it is just a bit strange that cgal actually took the correct boost lib/includes in /scratch.../FEniCS/build but the boost_thread was taken from somewhere completely else...
anyway, reconfiguring+building cgal solved the problem.

thanks again,

best regards,
patrick



this is suspicious, since it does not belong to the actual boost1.4.0 i have in my FEniCS/build dir don't know how it found this... i have set the BOOST_DIR variable correctly to .../FEniCS/build.
hm....




-----Original Message-----
From: Andy Ray Terrel [mailto:andy.terrel@xxxxxxxxx]
Sent: Thu 15.04.2010 16:26
To: Riesen  Patrick
Cc: DOLFIN Mailing List
Subject: Re: [Dolfin] linking error

Can you do ldd (otool -L on Mac) on the object file to see if boost's
shared library is being loaded. It looks like either an older version
of boost or a problem finding the shared library.

aterrel@aterrel:~/workspace/dolfin/demo/pde/stokes/taylor-hood/cpp$
otool -L ~/workspace/lib/libdolfin.dylib
/Users/aterrel/workspace/lib/libdolfin.dylib:
dolfin/libdolfin.dylib (compatibility version 0.0.0, current version 0.0.0)
       /System/Library/Frameworks/vecLib.framework/Versions/A/vecLib
(compatibility version 1.0.0, current version 268.0.1)
/sw/lib/libboost_program_options-1_35.dylib (compatibility version
1.35.0, current version 1.35.0)
/sw/lib/libboost_filesystem-1_35.dylib (compatibility version 1.35.0,
current version 1.35.0)
       /sw/lib/libboost_system-1_35.dylib (compatibility version 1.35.0,
current version 1.35.0)
/sw/lib/libxml2.2.dylib (compatibility version 9.0.0, current version 9.32.0) /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
       /usr/local/lib/libmpi_cxx.0.dylib (compatibility version 1.0.0,
current version 1.0.0)
/usr/local/lib/libmpi.0.dylib (compatibility version 1.0.0, current
version 1.1.0)
       /usr/local/lib/libopen-rte.0.dylib (compatibility version 1.0.0,
current version 1.0.0)
       /usr/local/lib/libopen-pal.0.dylib (compatibility version 1.0.0,
current version 1.0.0)
/usr/lib/libutil.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
       /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 125.0.1)


-- Andy

On Thu, Apr 15, 2010 at 8:57 AM, Patrick Riesen <priesen@xxxxxxxxxxxxxxx> wrote:
hello, i just made a bzr pull for all fenics packages.

dolfin compiled and linked without problem. but when compiling any of the
demos i get the following linking error:

mpic++ -o demo -Wl,-rpath,/scratch/priesen/FEniCS/build/lib main.o
-L/scratch/priesen/FEniCS/build/lib -L/usr/lib/atlas -ldolfin
-lboost_program_options -lboost_filesystem -lxml2 -lz -lumfpack -lamd
-lpetscts -lpetscsnes -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetsc
-lX11 -lCGAL -llapack -lblas
/scratch/priesen/FEniCS/build/lib/libdolfin.so: undefined reference to
`boost::detail::set_tss_data(void const*,
boost::shared_ptr<boost::detail::tss_cleanup_function>, void*, bool)'
/scratch/priesen/FEniCS/build/lib/libdolfin.so: undefined reference to
`boost::detail::get_tss_data(void const*)'
collect2: ld returned 1 exit status
scons: *** [demo] Error 1
scons: building terminated because of errors.


help appreciated :-)

best regards,

patrick

_______________________________________________
Mailing list: https://launchpad.net/~dolfin
Post to     : dolfin@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~dolfin
More help   : https://help.launchpad.net/ListHelp


_______________________________________________
Mailing list: https://launchpad.net/~dolfin
Post to     : dolfin@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~dolfin
More help   : https://help.launchpad.net/ListHelp



_______________________________________________
Mailing list: https://launchpad.net/~dolfin
Post to     : dolfin@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~dolfin
More help   : https://help.launchpad.net/ListHelp




References