inkscape-1.2-r1 fails to build with the (currently latest) version of poppler; the signature of a function within poppler seems to have changed and this causes a compile error. The build is successful with poppler 22.08.0 (previous version). This should probably be reported upstream as well.
I cannot attach a log of the build as it is larger than the permitted attachment size. The errors reported are: /var/tmp/portage/media-gfx/inkscape-1.2-r1/work/inkscape-1.2/src/extension/inter nal/pdfinput/svg-builder.cpp: In member function ‘void Inkscape::Extension::Inte rnal::SvgBuilder::_setStrokeStyle(SPCSSAttr*, GfxState*)’: /var/tmp/portage/media-gfx/inkscape-1.2-r1/work/inkscape-1.2/src/extension/internal/pdfinput/svg-builder.cpp:394:23: error: no matching function for call to ‘GfxState::getLineDash(double**, int*, double*)’ 394 | state->getLineDash(&dash_pattern, &dash_length, &dash_start); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /var/tmp/portage/media-gfx/inkscape-1.2-r1/work/inkscape-1.2/src/extension/internal/pdfinput/svg-builder.cpp:44: /usr/include/poppler/GfxState.h:1506:32: note: candidate: ‘const std::vector<double>& GfxState::getLineDash(double*)’ 1506 | const std::vector<double> &getLineDash(double *start) | ^~~~~~~~~~~ /usr/include/poppler/GfxState.h:1506:32: note: candidate expects 1 argument, 3 provided and /var/tmp/portage/media-gfx/inkscape-1.2-r1/work/inkscape-1.2/src/extension/inter nal/pdfinput/pdf-parser.cpp: In member function ‘void PdfParser::opSetDash(Objec t*, int)’: /var/tmp/portage/media-gfx/inkscape-1.2-r1/work/inkscape-1.2/src/extension/inter nal/pdfinput/pdf-parser.cpp:700:21: error: no matching function for call to ‘Gfx State::setLineDash(double*&, int&, double)’ 700 | state->setLineDash(dash, length, args[1].getNum()); | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/poppler/Gfx.h:40, from /var/tmp/portage/media-gfx/inkscape-1.2-r1/work/inkscape-1 .2/src/extension/internal/pdfinput/pdf-parser.cpp:30: /usr/include/poppler/GfxState.h:1591:10: note: candidate: ‘void GfxState::setLin eDash(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
Please test with 1.2.1.
I have, and 1.2.1 compiles fine against poppler 22.09.0
Thanks, but I don't think this is really something we're interested in fixing -- the newer version is fixed and ~arch builds with ~arch here. We'll be stabling new Poppler with fixed versions of other things soon. Is there a reason you're using an older Inkscape with new Poppler...?
At the time I raised the bug, as far as I know the two versions were the latest with keyword ~arm64, so I don't think I was running an unusual combination.
(In reply to stephen.smith3141 from comment #5) > At the time I raised the bug, as far as I know the two versions were the > latest with keyword ~arm64, so I don't think I was running an unusual > combination. Ah! This makes way more sense. It's because bug 859184 was stuck. Apologies for the confusion.
(In reply to Sam James from comment #6) > (In reply to stephen.smith3141 from comment #5) > > At the time I raised the bug, as far as I know the two versions were the > > latest with keyword ~arm64, so I don't think I was running an unusual > > combination. > > Ah! This makes way more sense. It's because bug 859184 was stuck. Apologies > for the confusion. (this is why we ask for emerge --info, by the way)