"Make" error ("no rule to build target")

Asked by Jérôme Duriez

Hi,

I want to install Yade from source code (what an idea...). I have my "three folders" :

- /home/3S-LAB/jduriez/Yade should be my install install folder, containing moreover the two other directories (is it a problem ?) :
- /home/3S-LAB/jduriez/Yade/BuildYade : as build-directory
- /home/3S-LAB/jduriez/Yade/trunk : containing the code

First step :
       cmake -DINSTALL_PREFIX=/home/3S-LAB/jduriez/Yade/ /home/3S-LAB/jduriez/Yade/trunk/
was apparently ok, even if gts and minieigen were not found (?). Output below :

********** FINAL OUTPUT OF CMAKE ***********
Yade will be installed to /home/3S-LAB/jduriez/Yade
-- Suffix is set to -2013-09-09.git-a7c38e5
-- LIBRARY_OUTPUT_PATH is set to lib/x86_64-linux-gnu
-- runtimePREFIX is set to /home/3S-LAB/jduriez/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 LinSolv GL2PS
-- Disabled features:
-- Optimized build
-- ===========================================================
-- Configuring done
-- Generating done
-- Build files have been written to: /home/3S-LAB/jduriez/Yade/BuildYade
********** END OF FINAL OUTPUT OF CMAKE ***********

But second step finished with an error :

jduriez@lt-med010:~/Yade/BuildYade$ make
.......
[ 4%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/moc_OpenGLManager.cxx.o
make[2]: *** Pas de règle pour fabriquer la cible « /usr/lib/x86_64-linux-gnu/libGL.so », nécessaire pour « gui/lib/x86_64-linux-gnu/_GLViewer.so ». Arrêt.
make[1]: *** [gui/CMakeFiles/_GLViewer.dir/all] Erreur 2
make: *** [all] Erreur 2

The error should be, in english, "No rule to build the target « /usr/lib/x86_64-linux-gnu/libGL.so », necessary for « gui/lib/x86_64-linux-gnu/_GLViewer.so ». Stop"

Did I do something wrong ?

Question information

Language:
English Edit question
Status:
Solved
For:
Yade Edit question
Assignee:
No assignee Edit question
Solved by:
Anton Gladky
Solved:
Last query:
Last reply:
Revision history for this message
burak er (burak-er) said :
#1

Can you give the full output from cmake?

Please make sure that you have installed the glut library and glviewer, these are freeglut and libqglviewer-qt4-dev packages . Have you looked at https://yade-dem.org/wiki/Installation_of_yade_on_debian_/_ubuntu to get required packages?

If you do not have access as root on the machine contact your administrator to install dependencies or find a way to install it as a standart user.

Revision history for this message
Jérôme Duriez (jduriez) said :
#2

Hello,

Thank you for your advices. I have indeed libqglviewer-qt4-dev and freeglut (freeglut3, in fact) installed. For other packages, I followed instructions of https://www.yade-dem.org/doc/installation.html#prerequisities, slightly different (more up-to-date, probably) from wiki instructions. But, now I also typed wiki instructions, and same problem holds..

Note that I'm no real root of my machine (I can install packages but that's all, more or less), do you think this could be related ?

Here is the complete output from cmake :

jduriez@lt-med010:~/Yade/BuildYade$ cmake -DINSTALL_PREFIX=/home/3S-LAB/jduriez/Yade/ /home/3S-LAB/jduriez/Yade/trunk/
-- Found Qt4: /usr/bin/qmake (found version "4.8.1")
-- Version is set to 2013-09-09.git-a7c38e5
-- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so
-- GTS using gts-config /usr/bin/gts-config
-- Using GTS from /usr
-- 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.so/usr/lib/libboost_date_time-mt.so/usr/lib/libboost_filesystem-mt.so/usr/lib/libboost_iostreams-mt.so/usr/lib/libboost_regex-mt.so/usr/lib/libboost_serialization-mt.so
-- Found Eigen3
-- Found VTK
-- Found OpenMP
-- GTS using gts-config /usr/bin/gts-config
-- Using GTS from /usr
-- 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
-- GMP libs: /usr/lib/x86_64-linux-gnu/libgmp.so /usr/lib/x86_64-linux-gnu/libgmpxx.so
-- Found CGAL
-- Found Cholmod
-- Found OpenBlas
-- Found Metis
-- Found GL2PS
Yade will be installed to /home/3S-LAB/jduriez/Yade
-- Suffix is set to -2013-09-09.git-a7c38e5
-- LIBRARY_OUTPUT_PATH is set to lib/x86_64-linux-gnu
-- runtimePREFIX is set to /home/3S-LAB/jduriez/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
-- ===========================================================
-- Yade configured with following features: Eigen3 VTK OpenMP GTS GUI CGAL PFVflow LinSolv GL2PS
-- Disabled features:
-- Optimized build
-- ===========================================================
-- Configuring done
-- Generating done
-- Build files have been written to: /home/3S-LAB/jduriez/Yade/BuildYade

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

Do you have /usr/lib/x86_64-linux-gnu/libGL.so actually?

Anton

Revision history for this message
Jérôme Duriez (jduriez) said :
#4

Yes, but as an "orphan symlink" apparently... Is there a special package I could install to solve it ?

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

Usually graphic driver. Or just remove GUI from features, if
you do not need that.

Anton

2013/9/16 jduriez <email address hidden>:
> Question #235459 on Yade changed:
> https://answers.launchpad.net/yade/+question/235459
>
> Status: Answered => Open
>
> jduriez is still having a problem:
> Yes, but as an "orphan symlink" apparently... Is there a special package
> I could install to solve it ?
>
> --
> You received this question notification because you are a member of
> yade-users, which is an answer contact for Yade.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users
> Post to : <email address hidden>
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp

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

You don't seem to have graphic acceleration Jerome. You may ask the IT guys.
What happens if you type "glxgears"? Do you see a smooth 3D rendering?

B

Revision history for this message
Jérôme Duriez (jduriez) said :
#7

Yes, glxgears does not work on my PC...

I have a pending "ticket" about this with the IT guys. I was wondering if this could be related to this yade issue, now there seems to be no doubt anymore. I'll "close" this answer when this will be definitively sure, thanks all !

Revision history for this message
Jérôme Duriez (jduriez) said :
#8

Now I have back my graphical things, compilation is OK ! Thanks !

Revision history for this message
Jérôme Duriez (jduriez) said :
#9

Thanks Anton Gladky, that solved my question.

Revision history for this message
Hien Nguyen (giahien) said :
#10

Hello everybody,
I want to ask about Jerome's problem.
I have a similar error as him: "No rule to make target"
But the error the 'make install' process gave me is about pythonlib and GLViewer

[ 0%] Generating qt4/moc_OpenGLManager.cxx
[ 1%] Generating qt4/moc_GLViewer.cxx
Scanning dependencies of target _GLViewer
[ 2%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/GLViewer.cpp.o
[ 2%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/_GLViewer.cpp.o
[ 3%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/OpenGLManager.cpp.o
[ 4%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/GLViewerDisplay.cpp.o
[ 4%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/GLViewerMouse.cpp.o
[ 5%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/moc_GLViewer.cxx.o
[ 5%] Building CXX object gui/CMakeFiles/_GLViewer.dir/qt4/moc_OpenGLManager.cxx.o
make[2]: *** No rule to make target `/usr/lib/python3.2/config/libpython3.2.so', needed by `gui/lib/x86_64-linux-gnu/_GLViewer.so'. Stop.
make[1]: *** [gui/CMakeFiles/_GLViewer.dir/all] Error 2
make: *** [all] Error 2

And here is my cmake log:
/home/nghnguyen/Yade-1.0.7/yadebuild# cmake -DINSTALL_PREFIX=/home/nghnguyen/Yade-1.0.7/yadeinstall /home/nghnguyen/Yade-1.0.7/yadesource/trunk-1.07.0
-- The C compiler identification is GNU 4.6.3
-- The CXX compiler identification is GNU 4.6.3
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- 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/python3.2/config/libpython3.2.so (found version "2.7.3")
-- 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.2")
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.26")
-- Version is set to 1.07.0
-- 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
-- date_time
-- 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.so/usr/lib/libboost_date_time-mt.so/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/x86_64-linux-gnu/libpthread.so
-- Found Eigen3: /usr/include/eigen3 (Required is at least version "2.91.0")
-- Found BZip2: /usr/lib/x86_64-linux-gnu/libbz2.so (found version "1.0.6")
-- 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
-- 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 file glib/gregex.h
-- Looking for include file glib/gregex.h - found
-- Found GTS
-- Found Qt4: /usr/bin/qmake (found version "4.8.2")
-- Found GLUT: /usr/lib/x86_64-linux-gnu/libglut.so
-- 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 Cholmod: /usr/lib/libcholmod.so
-- Found OpenBlas: /usr/lib/openblas-base/libopenblas.so
-- Found Metis: /usr/include
-- Found Cholmod
-- Found OpenBlas
-- Found Metis
-- Found GL2PS
Yade will be installed to /home/nghnguyen/Yade-1.0.7/yadeinstall
-- Suffix is set to -1.07.0
-- LIBRARY_OUTPUT_PATH is set to lib/x86_64-linux-gnu
-- runtimePREFIX is set to /home/nghnguyen/Yade-1.0.7/yadeinstall
-- Found gts: /usr/local/lib/python2.7/dist-packages/gts
-- Use system gts version
-- Found minieigen: /usr/local/lib/python2.7/dist-packages/minieigen.so
-- Use system minieigen version
-- Found Tkinter: /usr/lib/python2.7/lib-tk/Tkinter.pyc
-- ===========================================================
-- Yade configured with following features: Eigen3 VTK OpenMP GTS GUI CGAL PFVflow LinSolv GL2PS
-- Disabled features:
-- Optimized build
-- ===========================================================
-- Configuring done
-- Generating done
-- Build files have been written to: /home/nghnguyen/Yade-1.0.7/yadebuild

Seem like no error though. The only thing I concern is why some package is go with python 2.7, while PythonLibs: /usr/lib/python3.2/config/libpython3.2.so (3.2).

In terminal as I type python, the installed version is 2.7.3:
Enthought Canopy Python 2.7.3 | 64-bit | (default, Aug 8 2013, 05:43:23)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-52)] on linux2

Final info
Ubuntu 12.04 64bit
The version of yade I want to compile is Yade-1.0.7

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

Hi,

> /usr/lib/python3.2/config/libpython3.2.so (3.2).
>
> In terminal as I type python, the installed version is 2.7.3:
> Enthought Canopy Python 2.7.3 | 64-bit | (default, Aug 8 2013, 05:43:23)
> [GCC 4.1.2 20080704 (Red Hat 4.1.2-52)] on linux2
                                   ^^^^^^^^^^^
Did you install Python manually?

Anton

Revision history for this message
Hien Nguyen (giahien) said :
#12

Hello Anton,
Thanks for replying.
Yes it's me who installed the Canopy Python, should I remove it?

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

2014-03-19 9:01 GMT+01:00 Hien Nguyen <email address hidden>:
> Yes it's me who installed the Canopy Python, should I remove it?

Well, I am always against of "manual software installation". Because it usually
causes very strange problems. Yes, please, remove it.

Cheers

Anton