yade -DDEBUG=True run error

Bug #1322274 reported by Chao Yuan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Yade
Fix Released
Low
Unassigned

Bug Description

I install yade from trunk with -DDEBUG=ON (my OS: Kubuntu 12.04). It can make install successfully. But when running it, it complains:

cyuan@dt-med006:~/temp$ ../yade/bin/yade-chaoDebug
Welcome to Yade 2014-05-19.git-fd1a0bc
Traceback (most recent call last):
  File "../yade/bin/yade-chaoDebug", line 125, in <module>
    import yade
  File "/home/3S-LAB/cyuan/yade/lib/x86_64-linux-gnu/yade-chaoDebug/py/yade/__init__.py", line 65, in <module>
    import boot
ImportError: /home/3S-LAB/cyuan/yade/lib/x86_64-linux-gnu/yade-chaoDebug/libyade.so: undefined symbol: _ZNK5boost9gregorian10greg_month15as_short_stringEv

Cmake output is:

cmake -DINSTALL_PREFIX=/home/3S-LAB/cyuan/yade/ /home/3S-LAB/cyuan/trunk -DSUFFIX="-chaoDebug" -DCMAKE_CXX_FLAGS="-DFLOW_ENGINE" -DENABLE_LINSOLV=OFF -DDEBUG=ON

-- 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 PythonLibs: /usr/lib/libpython2.7.so
-- 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 2014-05-19.git-fd1a0bc
-- 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
-- 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
-- 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 Eigen3
-- Boost Odeint can be enabled, only if Boost>=1.53 is used
-- 1
-- 46
-- 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
-- Found GL2PS
Yade will be installed to /home/3S-LAB/cyuan/yade
-- Suffix is set to -chaoDebug
-- LIBRARY_OUTPUT_PATH is set to lib/x86_64-linux-gnu
-- runtimePREFIX is set to /home/3S-LAB/cyuan/yade
-- Could NOT find gts (missing: PY_gts)
-- Use embedded version of gts. Please, consider installing the corresponding package
-- Could NOT find minieigen (missing: PY_minieigen)
-- Use embedded version of minieigen. Please, consider installing the corresponding package
-- Found Tkinter: /usr/lib/python2.7/lib-tk/Tkinter.pyc
-- ===========================================================
-- Yade configured with following features: Eigen3 VTK OpenMP GTS GUI CGAL PFVflow GL2PS
-- Disabled features: Odeint LinSolv SPH LIQMIGRATION LBMFLOW
-- Debug build
-- ===========================================================
-- Configuring done
-- Generating done
-- Build files have been written to: /home/3S-LAB/cyuan/trunkVersions/debug/build

Revision history for this message
Anton Gladky (gladky-anton) wrote :

Hi,

thanks for bugreport. It should be fixed [1].

Anton

[1] https://github.com/yade/trunk/commit/e36179eff54a29c918b11aab78badc1a72193a17

Changed in yade:
status: New → Fix Released
importance: Undecided → Low
Revision history for this message
Chao Yuan (chaoyuan2012) wrote :

Thank you very much, Anton.

Chao

Revision history for this message
Bruno Chareyre (bruno-chareyre) wrote :

Anton,
It seems cmake refuses to build on ubuntu 12.04 now (I know it is a bit old but...).
Installing boost-all-dev1.48 actually triggers the installation of some 1.46 packages, then:

CMake Error at /usr/share/cmake-2.8/Modules/FindBoost.cmake:1202 (message):
  Unable to find the requested Boost libraries.

  Boost version: 1.46.1

  Boost include path: /usr/include

  Detected version of Boost is too old. Requested version was 1.47 (or
  newer).

  The following Boost libraries could not be found:

          boost_python
          boost_thread
          boost_filesystem
          boost_iostreams
          boost_regex
          boost_serialization
          boost_system
          boost_date_time

Revision history for this message
Anton Gladky (gladky-anton) wrote :

Hi Bruno,

you are right. Now the minimal required version for Yade is 1.47.0, because
I removed extra/floating_point_utilities_v3 from the source, which is
shipped with Boost>= 1.47.0 [1]

But I checked, that the default Boost version for 12.04 Ubuntu is 1.48.0 [2],
so it should be enough. Ubuntu Lucid (10.04) is too old for Yade (it has 1.40.0)

[1] https://github.com/yade/trunk/commit/b829e20ca24abcba28a57e0250d83acc6f5c02b3
[2] http://packages.ubuntu.com/de/source/precise/boost-defaults

Anton

Revision history for this message
Bruno Chareyre (bruno-chareyre) wrote : Re: [Yade-dev] [Bug 1322274] Re: yade -DDEBUG=True run error
Download full text (13.8 KiB)

The problem is (I think) that the installation page of yade mentions
libboost-all-dev, and this dependency package gives a mix of some 1.46
and some 1.48.
It needs to either update the installation page or change some cmake config.
I'm now trying to install 1.48 packages one by one to see if it fixes
the problem.

Bruno

 sudo apt-get install libboost-all-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
  linux-image-3.2.0-35-generic
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  gccxml libboost-date-time-dev libboost-date-time1.46-dev
libboost-date-time1.46.1 libboost-dev libboost-filesystem-dev
libboost-filesystem1.46-dev libboost-filesystem1.46.1 libboost-graph-dev
  libboost-graph-parallel-dev libboost-graph-parallel1.46-dev
libboost-graph-parallel1.46.1 libboost-graph1.46-dev
libboost-graph1.46.1 libboost-iostreams-dev libboost-iostreams1.46-dev
  libboost-math-dev libboost-math1.46-dev libboost-math1.46.1
libboost-mpi-dev libboost-mpi-python-dev libboost-mpi1.46-dev
libboost-mpi1.46.1 libboost-program-options-dev
  libboost-program-options1.46-dev libboost-python-dev
libboost-python1.46-dev libboost-python1.46.1 libboost-regex-dev
libboost-regex1.46-dev libboost-regex1.46.1 libboost-serialization-dev
  libboost-serialization1.46-dev libboost-signals-dev
libboost-signals1.46-dev libboost-system-dev libboost-system1.46-dev
libboost-system1.46.1 libboost-test-dev libboost-test1.46-dev
  libboost-test1.46.1 libboost-thread-dev libboost-thread1.46-dev
libboost-wave-dev libboost-wave1.46-dev libboost-wave1.46.1
libboost1.46-dev libicu-dev
Suggested packages:
  libboost1.46-doc python3 libboost-random1.46-dev xsltproc doxygen
default-jdk icu-doc
The following NEW packages will be installed:
  gccxml libboost-all-dev libboost-date-time-dev
libboost-date-time1.46-dev libboost-date-time1.46.1 libboost-dev
libboost-filesystem-dev libboost-filesystem1.46-dev
libboost-filesystem1.46.1
  libboost-graph-dev libboost-graph-parallel-dev
libboost-graph-parallel1.46-dev libboost-graph-parallel1.46.1
libboost-graph1.46-dev libboost-graph1.46.1 libboost-iostreams-dev
  libboost-iostreams1.46-dev libboost-math-dev libboost-math1.46-dev
libboost-math1.46.1 libboost-mpi-dev libboost-mpi-python-dev
libboost-mpi1.46-dev libboost-mpi1.46.1 libboost-program-options-dev
  libboost-program-options1.46-dev libboost-python-dev
libboost-python1.46-dev libboost-python1.46.1 libboost-regex-dev
libboost-regex1.46-dev libboost-regex1.46.1 libboost-serialization-dev
  libboost-serialization1.46-dev libboost-signals-dev
libboost-signals1.46-dev libboost-system-dev libboost-system1.46-dev
libboost-system1.46.1 libboost-test-dev libboost-test1.46-dev
  libboost-test1.46.1 libboost-thread-dev libboost-thread1.46-dev
libboost-wave-dev libboost-wave1.46-dev libboost-wave1.46.1
libboost1.46-dev libicu-dev
0 upgraded, 49 newly installed, 0 to remove and 72 not upgraded.
Need to get 694 kB/28.8 MB of archives.
After this operation, 137 MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
Get...

Revision history for this message
Bruno Chareyre (bruno-chareyre) wrote :

Quite a mess...
some *1.48-dev conflicts with the *1.46-dev, and many packages (e.g.
cgal) depends on the 1.46.
I can't solve it.

Revision history for this message
Anton Gladky (gladky-anton) wrote :

Hmm, nice mix of dependencies. I can return back embedded
floating_point_utilities_v3 for lower version of Boost. But
Precise is really old for us already. I would like to try to
inject some C++11 and Qt5 things, which requires newer
compiler versions We need to be updated.

Anton

2014-05-23 19:04 GMT+02:00 Bruno Chareyre <email address hidden>:
> Quite a mess...
> some *1.48-dev conflicts with the *1.46-dev, and many packages (e.g.
> cgal) depends on the 1.46.
> I can't solve it.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.