Open ghost opened 7 years ago
You should first try to compile again without the -j4 so we can have a clue of what the error is, otherwise the error message is spread across all the log, interleaved with 3 processes.
You can then repost the log and we will take a look.
Could you also please tell us which version of Ubuntu you are using ? I have some Dockerfiles that I can share with you, that might help you to debug your issue.
checking for libproxy... no.
checking for Glib... yes.
checking for ICU... yes.
checking for PulseAudio... no.
checking for OpenGL... no.
The OpenGL functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in
/home/sk/Documents/Augmented_Reality/fw4spl/Deps/Build/Debug/qt/qt-prefix/src/qt/qtbase/mkspecs/linux-g++.
qt/CMakeFiles/qt.dir/build.make:117: recipe for target 'qt/qt-prefix/src/qt-stamp/qt-configure' failed
make[2]: *** [qt/qt-prefix/src/qt-stamp/qt-configure] Error 1
CMakeFiles/Makefile2:2814: recipe for target 'qt/CMakeFiles/qt.dir/all' failed
make[1]: *** [qt/CMakeFiles/qt.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
I have typed in make
in the terminal instead of make -j4
.
Yes, some Dockerfiles could be helpful and I am using the version Ubuntu 16.04
You must also change the CMakeLists.txt
file in .../Src/fw4spl-deps/tetgen
because the link does not exist anymore. Change this line set(CACHED_URL http://www.tetgen.org/1.5/src/tetgen1.5.0.tar.gz)
into this set(CACHED_URL https://launchpad.net/ubuntu/+archive/primary/+files/tetgen_1.5.0.orig.tar.gz)
.
-- Retrying...
-- Using src='http://www.tetgen.org/1.5/src/tetgen1.5.0.tar.gz'
-- Retry after 5 seconds (attempt #2) ...
-- Using src='http://www.tetgen.org/1.5/src/tetgen1.5.0.tar.gz'
For Qt, here is the stuff I installed to build on Ubuntu 16.04:
sudo apt-get install -y '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libasound2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libssl-dev libxt-dev libvlc-dev libvlccore-dev libudev-dev libxaw7-dev libxrandr-dev
I will upload some Dockerfiles soon on a separate repo.
For Tetgen I already noticed this issue but that was really random. This is probably a good idea to change the URL as the server seems not be be reliable.
checking for mtdev... no.
checking for libdl... yes.
checking for DB2... no.
checking for InterBase... no.
checking for MySQL (thread-safe)... no.
checking for MySQL (thread-unsafe)... yes.
checking for OCI... no.
checking for ODBC... yes.
checking for PostgreSQL... yes.
checking for SQLite2... no.
checking for TDS... no.
checking for NIS... yes.
checking for Cups... no.
checking for POSIX iconv... no.
checking for SUN libiconv... no.
checking for GNU libiconv... no.
checking for libproxy... no.
checking for Glib... yes.
checking for ICU... yes.
checking for PulseAudio... no.
checking for OpenGL... no.
The OpenGL functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in
/home/sk/qt/qt-prefix/src/qt/qtbase/mkspecs/linux-g++.
qt/CMakeFiles/qt.dir/build.make:117: recipe for target 'qt/qt-prefix/src/qt-stamp/qt-configure' failed
make[2]: *** [qt/qt-prefix/src/qt-stamp/qt-configure] Error 1
CMakeFiles/Makefile2:2814: recipe for target 'qt/CMakeFiles/qt.dir/all' failed
make[1]: *** [qt/CMakeFiles/qt.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error
Thanks, now I am getting this error.
Thanks Flavien and please let me know when the dockerfiles are uploaded and also the link to it.
You're welcome, you can find them here : https://github.com/fw4spl-org/docker-fw4spl-deps
But that's a bit weird, normally with the packages you installed you should have the GL headers. Can you verify you have a provider like mesa-common-dev
?
Thanks, I'll check them out. I've typed sudo apt-get install mesa-common-dev
and it says that it is already the newest version. One of my colleagues is having trouble installing fw4spl on Windows, do you have any binary installers that could automate the installation process by any chance?
I've ran the dockerfile that you provided and this error message occurs for some reason, can you help me out? thanks.
-- Installing: /home/build/deps/install/Debug/plugins/position/libqtposition_positionpoll.so
-- Installing: /home/build/deps/install/Debug/plugins/sqldrivers/libqsqlite.so
-- Installing: /home/build/deps/install/Debug/plugins/xcbglintegrations/libqxcb-glx-integration.so
[ 84%] Completed 'qt'
[ 84%] Built target qt
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
Ok so at least you manage to build qt this time, but something else broke earlier. Unfortunately because of -j
in the make command we can't see what broke. You may want to re-run your container with docker start
to continue the build and get a chance to get the error. You can also redirect the make output in the Dockerfile to a file and then inspect this file. Otherwise without any log I wont' be able to help.
We could assume this is tetgen failiing to download again but we can't be certain.
Can you tell me how I can redirect the make output to a log? Since I am not familiar with these things. I do not think it was tetgen this time because I remember seeing tetgen being downloaded in the terminal during compilation (i think).
Just change the make
line into something like:
make -j`grep processor -c /proc/cpuinfo` 2> build.log
And then with docker cp
command you can retrieve the file on your host and inspect it.
Ok, Ill try it tomorrow and tell you what happens.
Hi, I changed the first line into the one below in Dockerfile.txt.
CMD make -j`grep processor -c /proc/cpuinfo` && make package
CMD make -j`grep processor -c /proc/cpuinfo` 2> build.log
Then I ran sudo docker ls -a
to obtain the container id which was d309ddd54430
.
Then I ran sudo docker start d309ddd54430
.
Then the terminal printed 64e7aa15a22e
.
Then I ran sudo docker container logs d309ddd54430
.
Then the terminal printed the messages below.
-- Installing: /home/build/deps/install/Debug/include/vtk-7.0/vtkQtTableView.h
-- Installing: /home/build/deps/install/Debug/include/vtk-7.0/vtkQtTreeView.h
-- Installing: /home/build/deps/install/Debug/include/vtk-7.0/vtkQtView.h
-- Installing: /home/build/deps/install/Debug/include/vtk-7.0/vtkViewsQtModule.h
[ 88%] Install configuration file
[ 89%] Completed 'vtk'
[ 89%] Built target vtk
-- Retry after 5 seconds (attempt #2) ...
-- Using src='http://www.tetgen.org/1.5/src/tetgen1.5.0.tar.gz'
-- Retry after 5 seconds (attempt #3) ...
-- Using src='http://www.tetgen.org/1.5/src/tetgen1.5.0.tar.gz'
I think this indicates that it was tetgen failing again.
Hi I've managed to get the log file.
I've tried this time using Mac OS X and a different error occurred. Would be great if you could help.
Output for make all
[ 96%] Building CXX object Utilities/VTK/CMakeFiles/vtkgdcm.dir/vtkGDCMThreadedImageReader2.cxx.o
[ 97%] Linking CXX shared library ../../bin/libvtkgdcm.dylib
[ 97%] Built target vtkgdcm
Scanning dependencies of target DOCBOOK_MANPAGES
[ 97%] Generating gdcmxml.1
http://docbook.sourceforge.net/release/xsl-ns/current/VERSION.xsl:26: parser error : Premature end of data in tag Branch line 26
<fm:Branch>XSL
^
http://docbook.sourceforge.net/release/xsl-ns/current/VERSION.xsl:26: parser error : Premature end of data in tag project line 24
<fm:Branch>XSL
^
http://docbook.sourceforge.net/release/xsl-ns/current/VERSION.xsl:26: parser error : Premature end of data in tag stylesheet line 2
<fm:Branch>XSL
^
compilation error: file http://docbook.sourceforge.net/release/xsl-ns/current/html/docbook.xsl line 24 element include
xsl:include : unable to load http://docbook.sourceforge.net/release/xsl-ns/current/VERSION.xsl
compilation error: file /Users/dhlee/Documents/fw4spl/Deps/Build/Debug/gdcm/gdcm-prefix/src/gdcm/Utilities/doxygen/man/gdcmxml.xml line 3 element refentry
xsltParseStylesheetProcess : document is not a stylesheet
make[5]: *** [Utilities/doxygen/gdcmxml.1] Error 5
make[4]: *** [Utilities/doxygen/CMakeFiles/DOCBOOK_MANPAGES.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [gdcm/gdcm-prefix/src/gdcm-stamp/gdcm-build] Error 2
make[1]: *** [gdcm/CMakeFiles/gdcm.dir/all] Error 2
make: *** [all] Error 2
Output for make
[ 93%] Built target gdcmMEXD
[ 97%] Built target vtkgdcm
[ 97%] Generating gdcmxml.1
http://docbook.sourceforge.net/release/xsl-ns/current/VERSION.xsl:26: parser error : Premature end of data in tag Branch line 26
<fm:Branch>XSL
^
http://docbook.sourceforge.net/release/xsl-ns/current/VERSION.xsl:26: parser error : Premature end of data in tag project line 24
<fm:Branch>XSL
^
http://docbook.sourceforge.net/release/xsl-ns/current/VERSION.xsl:26: parser error : Premature end of data in tag stylesheet line 2
<fm:Branch>XSL
^
compilation error: file http://docbook.sourceforge.net/release/xsl-ns/current/html/docbook.xsl line 24 element include
xsl:include : unable to load http://docbook.sourceforge.net/release/xsl-ns/current/VERSION.xsl
compilation error: file /Users/dhlee/Documents/fw4spl/Deps/Build/Debug/gdcm/gdcm-prefix/src/gdcm/Utilities/doxygen/man/gdcmxml.xml line 3 element refentry
xsltParseStylesheetProcess : document is not a stylesheet
make[5]: *** [Utilities/doxygen/gdcmxml.1] Error 5
make[4]: *** [Utilities/doxygen/CMakeFiles/DOCBOOK_MANPAGES.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [gdcm/gdcm-prefix/src/gdcm-stamp/gdcm-build] Error 2
make[1]: *** [gdcm/CMakeFiles/gdcm.dir/all] Error 2
make: *** [all] Error 2
Yes for the Linux issue, indeed that's tetgen failing again to download... This url really is not reliable. I'll propose something today to fix this.
And for MacOs the problem comes from the manpages documentation. We do not need them so I have proposed a patch to exclude them from the build. I'll keep you aware as soon as both patches are integrated into the dev
branch.
Ok both issues you reported should be fixed now on the dev
branch.
Thanks again for your feedback. :+1:
For Linux, I downloaded the fw4spl-deps
file in the dev
branch. There is another error..
Output for make -j4
[ 81%] Install configuration file
[ 82%] Completed 'vxl'
[ 82%] Built target vxl
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
Output for make
[ 2%] Built target jpeg
[ 5%] Built target zlib
[ 8%] Built target tiff
[ 11%] Built target libpng
[ 14%] Built target libiconv
[ 17%] Built target libxml
[ 20%] Built target expat
[ 23%] Built target python
[ 27%] Built target boost
[ 30%] Built target freetype
[ 33%] Built target icu4c
[ 34%] Performing configure step for 'qt'
+ cd qtbase
+ /home/sk/Documents/Augmented_Reality/fw4spl/Deps/Build/Debug/qt/qt-prefix/src/qt/qtbase/configure -top-level -prefix /home/sk/Deps/Install/Debug -I /home/sk/Deps/Install/Debug/include -L /home/sk/Deps/Install/Debug/lib -debug -skip qtactiveqt -skip qtconnectivity -skip qtsensors -skip qttranslations -skip qtwayland -skip qtwebengine -skip qtwebchannel -skip qtwebsockets -skip qtdeclarative -skip qtquickcontrols -skip qtcanvas3d -skip qtgraphicaleffects -skip qtscript -skip qtwayland -skip qtserialport -skip qtdoc -shared -opensource -confirm-license -system-zlib -system-libpng -system-libjpeg -system-freetype -nomake examples -nomake tests -no-dbus -no-fontconfig -opengl desktop -qt-xcb -c++std c++11 -gstreamer 1.0
This is the Qt Open Source Edition.
You are licensed to use this software under the terms of
the GNU Lesser General Public License (LGPL) versions 3.
You are also licensed to use this software under the terms of
the GNU General Public License (GPL) versions 2.
You have already accepted the terms of the Open Source license.
Creating qmake...
Done.
Running configuration tests...
checking for C++11... yes.
checking for default C++ standard edition... yes.
checking for 64-bit std::atomic... yes.
checking for sse2... yes.
checking for sse3... yes.
checking for ssse3... yes.
checking for sse4_1... yes.
checking for sse4_2... yes.
checking for avx... yes.
checking for avx2... yes.
checking for avx512f... yes.
checking for avx512er... yes.
checking for avx512cd... yes.
checking for avx512pf... yes.
checking for avx512dq... yes.
checking for avx512bw... yes.
checking for avx512vl... yes.
checking for avx512ifma... yes.
checking for avx512vbmi... yes.
checking for ipc_sysv... yes.
checking for mtdev... yes.
checking for libdl... yes.
checking for DB2... no.
checking for InterBase... no.
checking for MySQL (thread-safe)... no.
checking for MySQL (thread-unsafe)... yes.
checking for OCI... no.
checking for ODBC... yes.
checking for PostgreSQL... yes.
checking for SQLite2... no.
checking for TDS... no.
checking for NIS... yes.
checking for Cups... no.
checking for POSIX iconv... no.
checking for SUN libiconv... no.
checking for GNU libiconv... no.
checking for libproxy... no.
checking for Glib... yes.
checking for ICU... yes.
checking for PulseAudio... yes.
checking for OpenGL... no.
The OpenGL functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in
/home/sk/Documents/Augmented_Reality/fw4spl/Deps/Build/Debug/qt/qt-prefix/src/qt/qtbase/mkspecs/linux-g++.
qt/CMakeFiles/qt.dir/build.make:117: recipe for target 'qt/qt-prefix/src/qt-stamp/qt-configure' failed
make[2]: *** [qt/qt-prefix/src/qt-stamp/qt-configure] Error 1
CMakeFiles/Makefile2:2814: recipe for target 'qt/CMakeFiles/qt.dir/all' failed
make[1]: *** [qt/CMakeFiles/qt.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
Yes of course that's the issue you had before trying building with docker. As said earlier, this is weird because you told that you installed all the requirements. But apparently, you miss either /usr/include/GL/*
files or a libGL.so
somewhere (for instance /usr/lib/x86_64-linux-gnu/libGL.so
) which is very unlikely to happen.
Please have a look at http://wiki.qt.io/Building_Qt_5_from_Git, this may help you to find your missing requirement.
I am using Ubuntu and I am compiling the FW4SPL dependencies using the terminal with the command
make -j4
. Then this error occurred, what could be the problem?