make install crash

Asked by Raphaël Maurin

Hi all,
Sorry for the wrong manipulation.
I am on my usual computer (Ubuntu 12.04), where a version of yade compiled from source (2014-12-12.git-ec93711) is working. I tried to update and compile the actual version of the trunk but unfortunately it does not work. The cmake step is ok (see output below), but when doing make install I get an error starting by :

raphael@GRP3723:~/these/code/Yade/TEST/testBis/compiled$ make install
[ 1%] Generating qt4/moc_OpenGLManager.cxx
[ 2%] Generating qt4/moc_GLViewer.cxx
Scanning dependencies of target _GLViewer
[ 3%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/GLViewer.cpp.o
In file included from /home/raphael/these/code/Yade/TEST/testBis/core/Omega.hpp:20:0,
                 from /home/raphael/these/code/Yade/TEST/testBis/gui/qt4/GLViewer.hpp:6,
                 from /home/raphael/these/code/Yade/TEST/testBis/gui/qt4/GLViewer.cpp:11:
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:8:8: erreur: expected nested-name-specifier before ‘Real’
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:8:8: erreur: ‘Real’ has not been declared
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:8:13: erreur: expected ‘;’ before ‘=’ token
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:8:13: erreur: expected unqualified-id before ‘=’ token
In file included from /home/raphael/these/code/Yade/TEST/testBis/core/Omega.hpp:20:0,
                 from /home/raphael/these/code/Yade/TEST/testBis/gui/qt4/GLViewer.hpp:6,
                 from /home/raphael/these/code/Yade/TEST/testBis/gui/qt4/GLViewer.cpp:11:
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:106:27: erreur: expected unqualified-id before ‘using’
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:107:7: erreur: expected nested-name-specifier before ‘Vector2i’
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:107:7: erreur: ‘Vector2i’ has not been declared
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:107:16: erreur: expected ‘;’ before ‘=’ token
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:107:16: erreur: expected unqualified-id before ‘=’ token
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:108:7: erreur: expected nested-name-specifier before ‘Vector2r’
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:108:7: erreur: ‘Vector2r’ has not been declared
.....
Which is very long and end by :
make[2]: *** [gui/CMakeFiles/_GLViewer.dir/qt4/GLViewer.cpp.o] Erreur 1
make[1]: *** [gui/CMakeFiles/_GLViewer.dir/all] Erreur 2
make: *** [all] Erreur 2

as cmake command works, I am wondering if this due to the code which is on the trunk or to my computer ?

Raphaël

cmake -DCMAKE_INSTALL_PREFIX=./ ../

-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Found PythonInterp: /usr/bin/python (found version "2.7.3")
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Success
-- Try OpenMP CXX flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Success
-- Found OpenMP: -fopenmp
-- Looking for Q_WS_X11
-- Looking for Q_WS_X11 - found
-- Looking for Q_WS_WIN
-- Looking for Q_WS_WIN - not found.
-- Looking for Q_WS_QWS
-- Looking for Q_WS_QWS - not found.
-- Looking for Q_WS_MAC
-- Looking for Q_WS_MAC - not found.
-- Found Qt4: /usr/bin/qmake (found version "4.8.1")
-- Version is set to 2015-06-02.git-f6c50e6
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so
-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libGL.so
-- GTS using gts-config /usr/bin/gts-config
-- Using GTS from /usr
-- Found GL2PS: /usr/lib/libgl2ps.so
-- Found CGAL: /usr/include/CGAL, /usr/lib/libCGAL.so
-- Found NumPy: version "1.6.1" /usr/lib/python2.7/dist-packages/numpy/core/include
-- Found Loki: /usr/include
-- Boost version: 1.46.1
-- Found the following Boost libraries:
-- python
-- thread
-- filesystem
-- iostreams
-- regex
-- serialization
-- system
-- date_time
-- Boost_VERSION: 104601
-- Boost_LIB_VERSION: 1_46_1
-- Boost_INCLUDE_DIRS: /usr/include
-- Boost_LIBRARIES: /usr/lib/libboost_python.so/usr/lib/libboost_thread-mt.sopthread/usr/lib/libboost_filesystem-mt.so/usr/lib/libboost_iostreams-mt.so/usr/lib/libboost_regex-mt.so/usr/lib/libboost_serialization-mt.so/usr/lib/libboost_system-mt.so/usr/lib/libboost_date_time-mt.so
-- Found Eigen3: /usr/include/eigen3 (Required is at least version "2.91.0")
-- Found BZip2: /usr/lib/x86_64-linux-gnu/libbz2.so
-- Looking for BZ2_bzCompressInit in /usr/lib/x86_64-linux-gnu/libbz2.so
-- Looking for BZ2_bzCompressInit in /usr/lib/x86_64-linux-gnu/libbz2.so - found
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.3.4")
-- Found PythonLibs: /usr/lib/libpython2.7.so
-- Found Eigen3, version: 3.2.1
-- Disable vectorization
-- Boost Odeint can be enabled, only if Boost>=1.53 is used
-- Found VTK
-- Found OpenMP
-- GTS using gts-config /usr/bin/gts-config
-- Using GTS from /usr
-- checking for one of the modules 'glib-2.0'
-- Found GLib2: glib-2.0 /usr/include/glib-2.0;/usr/lib/x86_64-linux-gnu/glib-2.0/include
-- Looking for include files HAVE_GLIB_GREGEX_H
-- Looking for include files HAVE_GLIB_GREGEX_H - found
-- Found GTS
-- Found Qt4: /usr/bin/qmake (found version "4.8.1")
-- Found QGLViewer: /usr/lib/x86_64-linux-gnu/libqglviewer-qt4.so
-- Found GUI-LIBS
-- GMP libs: /usr/lib/x86_64-linux-gnu/libgmp.so /usr/lib/x86_64-linux-gnu/libgmpxx.so
-- Found GMP: /usr/include
-- GMP libs: /usr/lib/x86_64-linux-gnu/libgmp.so /usr/lib/x86_64-linux-gnu/libgmpxx.so
-- Found CGAL
-- Could NOT find Cholmod (missing: CHOLMOD_LIBRARIES CHOLMOD_INCLUDE_DIR AMD_LIBRARY CAMD_LIBRARY COLAMD_LIBRARY CCOLAMD_LIBRARY)
-- Found OpenBlas: /usr/lib/openblas-base/libopenblas.so
-- Could NOT find Metis (missing: METIS_INCLUDE_DIR METIS_LIBRARY)
-- Missing dependency for LINSOLV, disabled
-- Found GL2PS
-- Boost version is less than 1.47, using embedded version of floating_point_utilities_v3
-- Consider updating boost or system, as this embedded library will be removed soon
LBMFLOW is still experimental, building and running LBM engine are at your own risk!
Yade will be installed to /home/raphael/these/code/Yade/TEST/testBis/compiled
-- Suffix is set to -2015-06-02.git-f6c50e6
-- LIBRARY_OUTPUT_PATH is set to lib/x86_64-linux-gnu
-- runtimePREFIX is set to /home/raphael/these/code/Yade/TEST/testBis/compiled
-- Found gts: /usr/lib/python2.7/dist-packages/gts
-- Use system gts version
-- Found minieigen: /usr/lib/python2.7/dist-packages/minieigen.so
-- Found Tkinter: /usr/lib/python2.7/lib-tk/Tkinter.pyc
-- ===========================================================
-- Yade configured with following features: VTK OpenMP GTS GUI CGAL PFVFLOW GL2PS LBMFLOW
-- Disabled features: Odeint LINSOLV SPH LIQMIGRATION MASK_ARBITRARY PROFILING
-- Optimized build
-- ===========================================================
-- Configuring done
-- Generating done
-- Build files have been written to: /home/raphael/these/code/Yade/TEST/testBis/compiled

Question information

Language:
English Edit question
Status:
Solved
For:
Yade Edit question
Assignee:
No assignee Edit question
Solved by:
Raphaël Maurin
Solved:
Last query:
Last reply:
Revision history for this message
Anton Gladky (gladky-anton) said :
#2

> as cmake command works, I am wondering if this due to the code which is on the trunk or to my computer ?

 I guess you have an older compiler, which does not support all C++11 commands. Try to update the gcc or use cgal. More proper option is to update operating system.

Revision history for this message
Bruno Chareyre (bruno-chareyre) said :
#3

Hello Raphaël,
Usually it is useless to paste long error logs, since one initial error is usually triggering much more errors.
The interesting part is:

In file included from /home/raphael/these/code/Yade/TEST/testBis/core/Omega.hpp:20:0,
                 from /home/raphael/these/code/Yade/TEST/testBis/gui/qt4/GLViewer.hpp:6,
                 from /home/raphael/these/code/Yade/TEST/testBis/gui/qt4/GLViewer.cpp:11:
/home/raphael/these/code/Yade/TEST/testBis/lib/base/Math.hpp:8:8: erreur: expected nested-name-specifier before ‘Real’

Every 12.04 has this. Last guess we (Chao) had is that we have too old gcc. We concluded that we at 3SR would upgrade the older systems to 14.04.
It is probably possible to fix the error, but somehow this is like asking Anton to fix the B&W TV of my grandma.

@Chao, could you please tell again which is the last compiling version you identified?

Bruno

Revision history for this message
Bruno Chareyre (bruno-chareyre) said :
#4

@Anton
>Try to update the gcc or use cgal

Why "use cgal"??

Revision history for this message
Chao Yuan (chaoyuan2012) said :
#5

In short term, if you don't want to update OS, you can rock back this commit:
https://github.com/yade/trunk/commit/3523c619bc3e1035d441a83b1d3d7c03cd09d8e0
which works for old compiler.

Chao

Revision history for this message
Anton Gladky (gladky-anton) said :
#6

> Why "use cgal"??

Sorry, clang.

Revision history for this message
Raphaël Maurin (raphael-maurin) said :
#7

Thank you for all the answers, it seems I will have to go to Ubuntu 14.04. I tried to update gcc manually and succeeded to have g++-4.7, but the compilation still does not work...Upgrading seems the easiest.
Thanks again
Raphaël

Revision history for this message
Anton Gladky (gladky-anton) said :
#8

> I will have to go to Ubuntu 14.04

Hmm, it is already also almost 1.5 years old. See release schedule,
it was frozen 02/2014 [1].

[1] https://wiki.ubuntu.com/TrustyTahr/ReleaseSchedule

Revision history for this message
Chareyre (bruno-chareyre-9) said :
#9

>
> Hmm, it is already also almost 1.5 years old. See release schedule,
> it was frozen 02/2014 [1].
The latest LTS though. Do you mean we should go straight to 14.10, or
even 15.04?
Chao and others here have problems compiling with 14.04 btw. Please
guys, be a bit more verbose on the problems you find.
Bruno

Revision history for this message
Klaus Thoeni (klaus.thoeni) said :
#10

Hi Bruno,

just did a fresh install of LTS 14.04 and yade was compiling fine. What problems do you have in Grenoble?

I think we should always support the latest LTS. I don't like the idea of upgrading every 6 month.

Klaus

Revision history for this message
Raphaël Maurin (raphael-maurin) said :
#11

Hi,
I also did a fresh install of 14.04 LTS and yade was compiling fine, but I am currently having problems compiling yade on a system under 14.04 LTS just upgraded from 12.04 LTS: the problem might be in the upgrading. I am installing the LTS version because I do not want to upgrade too often.
Raphaël

Revision history for this message
Anton Gladky (gladky-anton) said :
#12

Hi,

don`t take me wrong, we will surely support LTS-versions of Ubuntu,
because many people are using it. It was just warned, that 14.04
is already a little outdated (for example, boost is there of version 1.54,
actual is 1.58). You can also consider the newly released Debian Jessie,
which is a little bit newer.

Anton