Bug 1841257
| Summary: | [FTBFS] openscad fails to build with boost-1.73.0 | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Jonathan Wakely <jwakely> |
| Component: | openscad | Assignee: | Miro Hrončok <mhroncok> |
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | rawhide | CC: | igor.raits, mhroncok |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | openscad-2019.05-11.fc33 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2020-06-03 12:35:37 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 1803235 | ||
|
Description
Jonathan Wakely
2020-05-28 17:51:59 UTC
Trying with https://github.com/openscad/openscad/commit/6fecf31de12e74f4c63b146365a69ce567ef64dc Scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=45283298 Scratch build with the Gentoo patch (<boost/endian/arithmetic.hpp>): https://koji.fedoraproject.org/koji/taskinfo?taskID=45286503 :/
g++ -c -pipe -DSTACKSIZE=8388608 -fno-strict-aliasing -std=c++11 -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -std=gnu++11 -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DEIGEN_DONT_ALIGN -std=c++14 -frounding-math -D_REENTRANT -Wall -Wextra -Wno-unused-local-typedefs -fPIC -DOPENSCAD_VERSION=2019.05 -DOPENSCAD_SHORTVERSION=2019.05 -DOPENSCAD_YEAR=2019.0 -DOPENSCAD_MONTH=05.0 -DOPENSCAD_DAY=.0 -DSTACKSIZE=8388608 -DUSE_QOPENGLWIDGET -DENABLE_DBUS -DENABLE_JOYSTICK -DENABLE_QGAMEPAD -DUSE_SCINTILLA_EDITOR -DQSCINTILLA_DLL -DENABLE_LIBZIP -DENABLE_OPENCSG -DENABLE_CGAL -DCGAL_HEADER_ONLY -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_GAMEPAD_LIB -DQT_GUI_LIB -DQT_CONCURRENT_LIB -DQT_NETWORK_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -Isrc -Isrc/ext/libtess2/Include -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtPrintSupport -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtMultimedia -isystem /usr/include/qt5/QtGamepad -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtConcurrent -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtCore -Iobjects -isystem /usr/include/eigen3 -I/usr/lib64/qt5/mkspecs/linux-g++ -o objects/objects/lexer.o objects/lexer.cxx
g++ -c -pipe -DSTACKSIZE=8388608 -fno-strict-aliasing -std=c++11 -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -std=gnu++11 -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DEIGEN_DONT_ALIGN -std=c++14 -frounding-math -D_REENTRANT -Wall -Wextra -Wno-unused-local-typedefs -fPIC -DOPENSCAD_VERSION=2019.05 -DOPENSCAD_SHORTVERSION=2019.05 -DOPENSCAD_YEAR=2019.0 -DOPENSCAD_MONTH=05.0 -DOPENSCAD_DAY=.0 -DSTACKSIZE=8388608 -DUSE_QOPENGLWIDGET -DENABLE_DBUS -DENABLE_JOYSTICK -DENABLE_QGAMEPAD -DUSE_SCINTILLA_EDITOR -DQSCINTILLA_DLL -DENABLE_LIBZIP -DENABLE_OPENCSG -DENABLE_CGAL -DCGAL_HEADER_ONLY -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_GAMEPAD_LIB -DQT_GUI_LIB -DQT_CONCURRENT_LIB -DQT_NETWORK_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -Isrc -Isrc/ext/libtess2/Include -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtPrintSupport -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtMultimedia -isystem /usr/include/qt5/QtGamepad -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtConcurrent -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtCore -Iobjects -isystem /usr/include/eigen3 -I/usr/lib64/qt5/mkspecs/linux-g++ -o objects/objects/parser.o objects/parser.cxx
src/parser.y:68:6: error: 'stack' in namespace 'std' does not name a template type
68 | std::stack<LocalScope *> scope_stack;
| ^~~~~
src/parser.y:51:1: note: 'std::stack' is defined in header '<stack>'; did you forget to '#include <stack>'?
50 | #include "boost-utils.h"
+++ |+#include <stack>
51 |
src/parser.y: In function 'int parserparse()':
src/parser.y:176:36: error: 'scope_stack' was not declared in this scope
176 | if ($1) scope_stack.top()->addChild($1);
| ^~~~~~~~~~~
src/parser.y:183:15: error: 'scope_stack' was not declared in this scope
183 | scope_stack.top()->addModule($2, newmodule);
| ^~~~~~~~~~~
src/parser.y:190:17: error: 'scope_stack' was not declared in this scope
190 | scope_stack.pop();
| ^~~~~~~~~~~
src/parser.y:195:15: error: 'scope_stack' was not declared in this scope
195 | scope_stack.top()->addFunction(func);
| ^~~~~~~~~~~
src/parser.y:215:41: error: 'scope_stack' was not declared in this scope
215 | for (auto &assignment : scope_stack.top()->assignments) {
| ^~~~~~~~~~~
In file included from src/exceptions.h:6,
from src/feature.h:9,
from src/module.h:5,
from src/FileModule.h:8,
from src/parser.y:39:
src/printutils.h:53:39: error: 'str' was not declared in this scope
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: in definition of macro 'PRINTB'
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: suggested alternatives:
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: in definition of macro 'PRINTB'
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
In file included from /usr/include/boost/format.hpp:53,
from src/printutils.h:6,
from src/exceptions.h:6,
from src/feature.h:9,
from src/module.h:5,
from src/FileModule.h:8,
from src/parser.y:39:
/usr/include/boost/format/free_funcs.hpp:22:38: note: 'boost::str'
22 | std::basic_string<Ch, Tr, Alloc> str(const basic_format<Ch, Tr, Alloc>& f) {
| ^~~
/usr/include/boost/format/free_funcs.hpp:22:38: note: 'boost::str'
In file included from src/exceptions.h:6,
from src/feature.h:9,
from src/module.h:5,
from src/FileModule.h:8,
from src/parser.y:39:
src/printutils.h:53:39: error: 'str' was not declared in this scope
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: in definition of macro 'PRINTB'
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: suggested alternatives:
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: in definition of macro 'PRINTB'
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
In file included from /usr/include/boost/format.hpp:53,
from src/printutils.h:6,
from src/exceptions.h:6,
from src/feature.h:9,
from src/module.h:5,
from src/FileModule.h:8,
from src/parser.y:39:
/usr/include/boost/format/free_funcs.hpp:22:38: note: 'boost::str'
22 | std::basic_string<Ch, Tr, Alloc> str(const basic_format<Ch, Tr, Alloc>& f) {
| ^~~
/usr/include/boost/format/free_funcs.hpp:22:38: note: 'boost::str'
In file included from src/exceptions.h:6,
from src/feature.h:9,
from src/module.h:5,
from src/FileModule.h:8,
from src/parser.y:39:
src/printutils.h:53:39: error: 'str' was not declared in this scope
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: in definition of macro 'PRINTB'
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: suggested alternatives:
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
src/printutils.h:53:39: note: in definition of macro 'PRINTB'
53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
| ^~~
In file included from /usr/include/boost/format.hpp:53,
from src/printutils.h:6,
from src/exceptions.h:6,
from src/feature.h:9,
from src/module.h:5,
from src/FileModule.h:8,
from src/parser.y:39:
/usr/include/boost/format/free_funcs.hpp:22:38: note: 'boost::str'
22 | std::basic_string<Ch, Tr, Alloc> str(const basic_format<Ch, Tr, Alloc>& f) {
| ^~~
/usr/include/boost/format/free_funcs.hpp:22:38: note: 'boost::str'
src/parser.y:257:19: error: 'scope_stack' was not declared in this scope
257 | scope_stack.top()->addAssignment(Assignment($1, shared_ptr<Expression>($3), LOC(@$)));
| ^~~~~~~~~~~
src/parser.y:287:17: error: 'scope_stack' was not declared in this scope
287 | scope_stack.push(&$1->scope);
| ^~~~~~~~~~~
src/parser.y:291:17: error: 'scope_stack' was not declared in this scope
291 | scope_stack.pop();
| ^~~~~~~~~~~
src/parser.y:307:17: error: 'scope_stack' was not declared in this scope
307 | scope_stack.push(&$1->else_scope);
| ^~~~~~~~~~~
src/parser.y:311:17: error: 'scope_stack' was not declared in this scope
311 | scope_stack.pop();
| ^~~~~~~~~~~
src/parser.y:320:17: error: 'scope_stack' was not declared in this scope
320 | scope_stack.push(&$<ifelse>$->scope);
| ^~~~~~~~~~~
src/parser.y:324:17: error: 'scope_stack' was not declared in this scope
324 | scope_stack.pop();
| ^~~~~~~~~~~
src/parser.y:340:38: error: 'scope_stack' was not declared in this scope
340 | if ($1) scope_stack.top()->addChild($1);
| ^~~~~~~~~~~
src/parser.y: In function 'bool parse(FileModule*&, const string&, const string&, const string&, int)':
src/parser.y:689:3: error: 'scope_stack' was not declared in this scope
689 | scope_stack.push(&rootmodule->scope);
| ^~~~~~~~~~~
make: *** [Makefile:4900: objects/objects/parser.o] Error 1
make: *** Waiting for unfinished jobs....
*** Bug 1843125 has been marked as a duplicate of this bug. *** I also get this:
g++ -c -pipe -DSTACKSIZE=8388608 -fno-strict-aliasing -std=c++11 -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m32 -march=i686 -mtune=generic -msse2 -mfpmath=sse -mstackrealign -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -std=gnu++11 -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DEIGEN_DONT_ALIGN -std=c++14 -frounding-math -D_REENTRANT -Wall -Wextra -Wno-unused-local-typedefs -fPIC -DOPENSCAD_VERSION=2019.05 -DOPENSCAD_SHORTVERSION=2019.05 -DOPENSCAD_YEAR=2019.0 -DOPENSCAD_MONTH=05.0 -DOPENSCAD_DAY=.0 -DSTACKSIZE=8388608 -DUSE_QOPENGLWIDGET -DENABLE_DBUS -DENABLE_JOYSTICK -DENABLE_QGAMEPAD -DUSE_SCINTILLA_EDITOR -DQSCINTILLA_DLL -DENABLE_LIBZIP -DENABLE_OPENCSG -DENABLE_CGAL -DCGAL_HEADER_ONLY -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_GAMEPAD_LIB -DQT_GUI_LIB -DQT_CONCURRENT_LIB -DQT_NETWORK_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -Isrc -Isrc/ext/libtess2/Include -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtPrintSupport -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtMultimedia -isystem /usr/include/qt5/QtGamepad -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtConcurrent -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtCore -Iobjects -isystem /usr/include/eigen3 -I/usr/lib/qt5/mkspecs/linux-g++ -o objects/src/GeometryEvaluator.o src/GeometryEvaluator.cc
In file included from /usr/include/boost/math/tools/cxx03_warn.hpp:9,
from /usr/include/boost/math/constants/constants.hpp:11,
from /usr/include/boost/math/special_functions/asinh.hpp:25,
from /usr/include/boost/multiprecision/gmp.hpp:21,
from /usr/include/CGAL/boost_mp.h:43,
from /usr/include/CGAL/internal/Exact_type_selector.h:27,
from /usr/include/CGAL/Exact_kernel_selector.h:26,
from /usr/include/CGAL/Filtered_kernel.h:22,
from /usr/include/CGAL/Exact_predicates_inexact_constructions_kernel.h:21,
from /usr/include/CGAL/Epic_converter.h:18,
from /usr/include/CGAL/Static_filtered_predicate.h:16,
from /usr/include/CGAL/Lazy_kernel.h:18,
from /usr/include/CGAL/Nef_3/SNC_k3_tree_traits.h:20,
from /usr/include/CGAL/Nef_3/SNC_point_locator.h:21,
from /usr/include/CGAL/Nef_3/SNC_external_structure.h:25,
from /usr/include/CGAL/Nef_3/SNC_constructor.h:32,
from /usr/include/CGAL/Nef_3/SNC_decorator.h:29,
from /usr/include/CGAL/Nef_polyhedron_3.h:28,
from src/cgal.h:18,
from src/CGAL_Nef_polyhedron.h:4,
from src/GeometryEvaluator.cc:18:
/usr/include/boost/bind.hpp:36:1: note: '#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.'
36 | BOOST_PRAGMA_MESSAGE(
| ^~~~~~~~~~~~~~~~~~~~
From CGAL. But it's only a note.
Yes, you get that note if you include <boost/bind.hpp> and don't define BOOST_BIND_GLOBAL_PLACEHOLDERS. To avoid the deprecation warning, either define the macro, or use <boost/bind/bind.hpp> and use the correct namespace to refer to the placeholders, i.e. boost::placeholders::_1 (or add a using-directive or using-declaration to make that usable as _1). I prefer the second option, since it's unclear if the first one will keep working indefinitely. The note is fine, I am more worried about the problem in comment #3. GCC said what to do: src/parser.y:51:1: note: 'std::stack' is defined in header '<stack>'; did you forget to '#include <stack>'? I've added the patch from your scratch build and fixed that. Building openscad-2019.05-11.fc33 for rawhide Created task: 45358493 Task info: https://koji.fedoraproject.org/koji/taskinfo?taskID=45358493 That worked in a local x86_64 mock. There are some failing tests, but they all failed in the last successful build in koji too: 334/1244 Test #341: cgalpngtest_import_3mf-tests .................................***Failed 0.42 sec 524/1244 Test #525: opencsgtest_import_3mf-tests .................................***Failed 0.58 sec 710/1244 Test #713: csgpngtest_import_3mf-tests ..................................***Failed 0.58 sec 894/1244 Test #897: throwntogethertest_import_3mf-tests ..........................***Failed 0.43 sec 1026/1244 Test #1027: 3mfpngtest_cube10 ............................................***Failed 0.66 sec 1048/1244 Test #1054: 3mfexport_3mf-export .........................................***Failed 0.12 sec The koji build failed to checkout the package, looks like a network connectivity issue. New one running now: Building openscad-2019.05-11.fc33 for rawhide Created task: 45358614 Task info: https://koji.fedoraproject.org/koji/taskinfo?taskID=45358614 > There are some failing tests
Unfortunately, this is an known issue.
----
Thanks for the fix!
Ah, upstream already has a patch for the missing <stack> header: https://patch-diff.githubusercontent.com/raw/openscad/openscad/pull/3105.patch |