Bug#653796: FTBFS with Boost 1.48: has_binary_operator.hp:50: Parse error at "BOOST_JOIN"
Steve M. Robbins
smr at debian.org
Sat Dec 31 01:01:21 UTC 2011
Source: qt-gstreamer
Version: 0.10.1-2
Severity: normal
Package fails to build with new Boost 1.48:
make[4]: Leaving directory `/home/steve/Packages/boost-defaults/rebuilds/build/qt-gstreamer/qt-gstreamer-0.10.1/obj-x86_64-linux-gnu'
make -f src/QGlib/CMakeFiles/QtGLib_automoc.dir/build.make src/QGlib/CMakeFiles/QtGLib_automoc.dir/build
make[4]: Entering directory `/home/steve/Packages/boost-defaults/rebuilds/build/qt-gstreamer/qt-gstreamer-0.10.1/obj-x86_64-linux-gnu'
cd /home/steve/Packages/boost-defaults/rebuilds/build/qt-gstreamer/qt-gstreamer-0.10.1/obj-x86_64-linux-gnu/src/QGlib && /usr/bin/automoc4 /home/steve/Packages/boost-defaults/rebuilds/build/qt-gstreamer/qt-gstreamer-0.10.1/obj-x86_64-linux-gnu/src/QGlib/QtGLib_automoc.cpp /home/steve/Packages/boost-defaults/rebuilds/build/qt-gstreamer/qt-gstreamer-0.10.1/src/QGlib /home/steve/Packages/boost-defaults/rebuilds/build/qt-gstreamer/qt-gstreamer-0.10.1/obj-x86_64-linux-gnu/src/QGlib /usr/bin/moc-qt4 /usr/bin/cmake
Generating connect.moc
usr/include/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN"
automoc4: process for /home/steve/Packages/boost-defaults/rebuilds/build/qt-gstreamer/qt-gstreamer-0.10.1/obj-x86_64-linux-gnu/src/QGlib/connect.moc failed: Unknown error
pid to wait for: 0
returning failed..
make[4]: *** [src/QGlib/CMakeFiles/QtGLib_automoc] Error 1
The parse error is from Qt's tools moc and lconvert. These tools do
not handle the entire C++ language; see the Qt issue
https://bugreports.qt.nokia.com/browse/QTBUG-22829
The workaround is to abuse the Boost header guards by defining it
on the moc/lconvert command line, thus avoiding having to parse
the boost headers. Pass -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED
to the moc invocation. If using cmake:
QT4_WRAP_CPP(sources ${moc-sources} OPTIONS -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED)
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 3.1.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
More information about the pkg-gstreamer-maintainers
mailing list