#1429 Linker fails for external grids with CMake
Metadata
Property | Value |
---|---|
Reported by | Christoph Grüninger (gruenich@iws.uni-stuttgart.de) |
Reported at | Feb 5, 2014 13:52 |
Type | Bug Report |
Version | Git (pre2.4) [autotools] |
Operating System | Unspecified / All |
Last edited by | Christoph Grüninger (gruenich@iws.uni-stuttgart.de) |
Last edited at | Feb 7, 2014 10:55 |
Description
With current trunk I get the following error message:
[ 77%] Building CXX object lib/CMakeFiles/dunegrid.dir/__/dune/grid/io/file/dgfparser/blocks/projection.cc.o
[ 88%] Building CXX object lib/CMakeFiles/dunegrid.dir/__/dune/grid/io/file/dgfparser/blocks/simplex.cc.o
[ 88%] Building CXX object lib/CMakeFiles/dunegrid.dir/__/dune/grid/io/file/dgfparser/blocks/simplexgeneration.cc.o
[100%] Building CXX object lib/CMakeFiles/dunegrid.dir/__/dune/grid/io/file/dgfparser/blocks/vertex.cc.o
Linking CXX shared library libdunegrid.so
/usr/bin/ld: /temp/gruenich/dune/cmake/dune-geometry/build-cmake/lib/libdunegeometry.a(referencedomain.cc.o): relocation R_X86_64_32S against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/temp/gruenich/dune/cmake/dune-geometry/build-cmake/lib/libdunegeometry.a: error adding symbols: Bad value
clang-3.4: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/libdunegrid.so] Error 1
make[1]: *** [lib/CMakeFiles/dunegrid.dir/all] Error 2
Same happened with UG and ALBERTA instead of ALUGrid.
I assume this was introduced by commit core/dune-common@75e2716b. Adding
-DBUILD_SHARED_LIBS:BOOL=OFF
to my CMAKE_FLAGS fixes the issue as it is like reverting the mentioned commit.