[Dune] CMake: compile dune-common now fails

Agnese, Marco m.agnese13 at imperial.ac.uk
Thu Sep 17 14:20:27 CEST 2015


Hi everybody,
I am trying to compile, using CMake, dune-common (last version of the trunk) on my system. 
It compiled some times ago but now it fails. 

This is the full output:

--- going to build dune-common  ---
--- calling all for dune-common ---
--- calling vcsetup for dune-common ---
--- calling autogen for dune-common ---
Skipping dune-autogen because of CMake
--- calling configure for dune-common ---
find: ‘dune’: No such file or directory
 cmake -DCMAKE_MODULE_PATH=""  -DCMAKE_DISABLE_FIND_PACKAGE_MPI=FALSE -DCMAKE_CXX_FLAGS="-O3 -Wall -funroll-loops -finline-functions -fomit-frame-pointer -ffast-math -mfpmath=sse -msse3" -DCMAKE_PREFIX_PATH="/usr/local_machine/ug-3.11.0;/usr/local_machine/alberta-3.0.0;/usr/local_machine/zoltan-3.8;/usr/local_machine/parmetis-4.0.3;;/usr/local_machine/petsc-3.5.3;/usr/local_machine/suitesparse-4.4.0" -DDUNE_GRID_EXPERIMENTAL_GRID_EXTENSIONS:BOOL=TRUE -DDUNE_EXTRA_UTILS:BOOL=TRUE "/usr/local_machine/dune-trunk-cmake/dune-common"
-- I could not find the latex2html command.
-- Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE) 
-- Performing tests specific to dune-common from file /usr/local_machine/dune-trunk-cmake/dune-common/cmake/modules/DuneCommonMacros.cmake.
-- Using scripts from /usr/local_machine/dune-trunk-cmake/dune-common/cmake/scripts for creating doxygen stuff.
CMake Error at cmake/modules/UseLATEX.cmake:743 (MESSAGE):
  LaTeX files must be built out of source or you must set LATEX_OUTPUT_PATH.
Call Stack (most recent call first):
  cmake/modules/UseLATEX.cmake:1361 (LATEX_GET_OUTPUT_PATH)
  cmake/modules/DuneDoc.cmake:89 (add_latex_document)
  doc/buildsystem/CMakeLists.txt:1 (dune_add_latex_document)


CMake Error at cmake/modules/UseLATEX.cmake:743 (MESSAGE):
  LaTeX files must be built out of source or you must set LATEX_OUTPUT_PATH.
Call Stack (most recent call first):
  cmake/modules/UseLATEX.cmake:1361 (LATEX_GET_OUTPUT_PATH)
  cmake/modules/DuneDoc.cmake:89 (add_latex_document)
  doc/buildsystem/CMakeLists.txt:4 (dune_add_latex_document)


CMake Error at cmake/modules/UseLATEX.cmake:743 (MESSAGE):
  LaTeX files must be built out of source or you must set LATEX_OUTPUT_PATH.
Call Stack (most recent call first):
  cmake/modules/UseLATEX.cmake:1361 (LATEX_GET_OUTPUT_PATH)
  cmake/modules/DuneDoc.cmake:89 (add_latex_document)
  doc/comm/CMakeLists.txt:8 (dune_add_latex_document)


-- Not adding custom target for config.h generation
-- 
-- The following OPTIONAL packages have been found:

 * PkgConfig
 * GMP
 * MPI
 * Threads

-- The following OPTIONAL packages have not been found:

 * ThreadsCMake31
 * LATEX
 * UnixCommands
 * Doxygen
 * Inkscape

-- Configuring incomplete, errors occurred!
See also "/usr/local_machine/dune-trunk-cmake/dune-common/CMakeFiles/CMakeOutput.log".
See also "/usr/local_machine/dune-trunk-cmake/dune-common/CMakeFiles/CMakeError.log".
--- Failed to build dune-common ---
Terminating dunecontrol due to previous errors!


and this is the CMakeError.log:

Determining if the pthread_create exist failed with the following output:
Change Dir: /usr/local_machine/dune-trunk-cmake/dune-common/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec2681480346/fast"
/usr/bin/make -f CMakeFiles/cmTryCompileExec2681480346.dir/build.make CMakeFiles/cmTryCompileExec2681480346.dir/build
make[1]: Entering directory `/usr/local_machine/dune-trunk-cmake/dune-common/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report /usr/local_machine/dune-trunk-cmake/dune-common/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec2681480346.dir/CheckSymbolExists.c.o
/usr/bin/cc    -o CMakeFiles/cmTryCompileExec2681480346.dir/CheckSymbolExists.c.o   -c /usr/local_machine/dune-trunk-cmake/dune-common/CMakeFiles/CMakeTmp/CheckSymbolExists.c
Linking C executable cmTryCompileExec2681480346
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec2681480346.dir/link.txt --verbose=1
/usr/bin/cc       CMakeFiles/cmTryCompileExec2681480346.dir/CheckSymbolExists.c.o  -o cmTryCompileExec2681480346 -rdynamic
CMakeFiles/cmTryCompileExec2681480346.dir/CheckSymbolExists.c.o: In function `main':
CheckSymbolExists.c:(.text+0x16): undefined reference to `pthread_create'
collect2: error: ld returned 1 exit status
make[1]: *** [cmTryCompileExec2681480346] Error 1
make[1]: Leaving directory `/usr/local_machine/dune-trunk-cmake/dune-common/CMakeFiles/CMakeTmp'
make: *** [cmTryCompileExec2681480346/fast] Error 2

File /usr/local_machine/dune-trunk-cmake/dune-common/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <pthread.h>

int main(int argc, char** argv)
{
  (void)argv;
#ifndef pthread_create
  return ((int*)(&pthread_create))[argc];
#else
  (void)argc;
  return 0;
#endif
}


What is the issue? How can I fix it?

Thank you very much for your help,
regards,
Marco.



More information about the Dune mailing list