Opened 3 years ago
Closed 3 years ago
#16985 closed defect (fixed)
Fix building inkscape with poppler-22.09.0
Reported by: | Douglas R. Reno | Owned by: | Douglas R. Reno |
---|---|---|---|
Priority: | normal | Milestone: | 11.3 |
Component: | BOOK | Version: | git |
Severity: | normal | Keywords: | |
Cc: |
Description ¶
When trying to build inkscape with poppler-22.09.0, you'll get:
[ 14%] Building CXX object src/CMakeFiles/inkscape_base.dir/extension/internal/pdfinput/pdf-parser.cpp.o In file included from /sources/inkscape-1.2.1/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/pdf-parser.cpp:32: /sources/inkscape-1.2.1/inkscape-1.2.1_2022-07-14_9c6d41e410/src/util/units.h:29:42: warning: ‘template<class _Arg, class _Result> struct std::unary_function’ is deprecated [-Wdeprecated-declarations] 29 | struct hash<Glib::ustring> : public std::unary_function<Glib::ustring, std::size_t> { | ^~~~~~~~~~~~~~ In file included from /usr/include/c++/12.2.0/string:48, from /usr/include/c++/12.2.0/bits/locale_classes.h:40, from /usr/include/c++/12.2.0/bits/ios_base.h:41, from /usr/include/c++/12.2.0/ios:42, from /usr/include/c++/12.2.0/ostream:38, from /usr/include/c++/12.2.0/iostream:39, from /usr/include/2geom-1.1.0/2geom/point.h:38, from /sources/inkscape-1.2.1/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/svg-builder.h:29, from /sources/inkscape-1.2.1/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/pdf-parser.cpp:29: /usr/include/c++/12.2.0/bits/stl_function.h:117:12: note: declared here 117 | struct unary_function | ^~~~~~~~~~~~~~ /sources/inkscape-1.2.1/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/pdf-parser.cpp: In member function ‘void PdfParser::opSetDash(Object*, int)’: /sources/inkscape-1.2.1/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/pdf-parser.cpp:700:21: error: no matching function for call to ‘GfxState::setLineDash(double*&, int&, double)’ 700 | state->setLineDash(dash, length, args[1].getNum()); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/poppler/Gfx.h:40, from /sources/inkscape-1.2.1/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/pdf-parser.cpp:30: /usr/include/poppler/GfxState.h:1591:10: note: candidate: ‘void GfxState::setLineDash(std::vector<double>&&, double)’ 1591 | void setLineDash(std::vector<double> &&dash, double start); | ^~~~~~~~~~~ /usr/include/poppler/GfxState.h:1591:10: note: candidate expects 2 arguments, 3 provided make[2]: *** [src/CMakeFiles/inkscape_base.dir/build.make:1567: src/CMakeFiles/inkscape_base.dir/extension/internal/pdfinput/pdf-parser.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:1493: src/CMakeFiles/inkscape_base.dir/all] Error 2 make: *** [Makefile:156: all] Error 2
This should get fixed by https://gitlab.com/inkscape/inkscape/-/merge_requests/4719/diffs
Change History (3)
comment:1 by , 3 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:2 by , 3 years ago
comment:3 by , 3 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Note:
See TracTickets
for help on using tickets.
This will make the security advisory slightly more complex than originally intended. I'll make a note that if you build Inkscape with poppler-22.09.0 installed, you're going to need the patch.