Problem compiling Inkscape on Slackware Current with version 22.09.0
oldpink opened this issue · 3 comments
I ran into a problem compiling Inkscape on my bleeding edge Slackware (current) platform once I updated to Poppler 22.09.0,, with compilation aborting at about the 37% point of compilation.
It sent the following two errors:
/tmp/SBo/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/pdf-parser.cpp: In member function ‘void PdfParser::opSetDash(Object*, int)’:
/tmp/SBo/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());
/tmp/SBo/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/svg-builder.cpp: In member function ‘void Inkscape::Extension::Internal::SvgBuilder::_setStrokeStyle(SPCSSAttr*, GfxState*)’:
/tmp/SBo/inkscape-1.2.1_2022-07-14_9c6d41e410/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);
I use Inkscape quite a lot, so not wanting to be without it, I crudely modified the affected source files with the following commands:
sed -i '700s%.%// &%' src/extension/internal/pdfinput/pdf-parser.cpp
sed -i '394s%.%// &%' src/extension/internal/pdfinput/svg-builder.cpp
I was unsure about whether that would work, but I'm happy to say that it completed, and (at least for now) Inkscape appears to work after compilation and installation were completed this way.
I don't know if this will cause unwanted crashes or other issues, but I wanted to let anyone else know that this will (at least for now) allow you to compile it.
However, I'm sure that a more elegant patch is called for rather than my primitive hack of simply commenting out the offending lines of code, so someone may want to find or write one for it.
In fact,
Not only with inkscape, I have problems trying to build dependencies, with audit and others.
I ran into a problem compiling Inkscape on my bleeding edge Slackware (current) platform once I updated to Poppler 22.09.0,, with compilation aborting at about the 37% point of compilation. It sent the following two errors:
/tmp/SBo/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/pdf-parser.cpp: In member function ‘void PdfParser::opSetDash(Object*, int)’: /tmp/SBo/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()); /tmp/SBo/inkscape-1.2.1_2022-07-14_9c6d41e410/src/extension/internal/pdfinput/svg-builder.cpp: In member function ‘void Inkscape::Extension::Internal::SvgBuilder::_setStrokeStyle(SPCSSAttr*, GfxState*)’: /tmp/SBo/inkscape-1.2.1_2022-07-14_9c6d41e410/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);
I use Inkscape quite a lot, so not wanting to be without it, I crudely modified the affected source files with the following commands:
sed -i '700s%.%// &%' src/extension/internal/pdfinput/pdf-parser.cpp sed -i '394s%.%// &%' src/extension/internal/pdfinput/svg-builder.cpp
I was unsure about whether that would work, but I'm happy to say that it completed, and (at least for now) Inkscape appears to work after compilation and installation were completed this way. I don't know if this will cause unwanted crashes or other issues, but I wanted to let anyone else know that this will (at least for now) allow you to compile it. However, I'm sure that a more elegant patch is called for rather than my primitive hack of simply commenting out the offending lines of code, so someone may want to find or write one for it.
It needs this patch :
[PATCH] Fix build with Poppler 22.09.0
https://github.com/archlinux/svntogit-packages/blob/packages/inkscape/trunk/inkscape-1.2.1-poppler-22.09.0.patch
I'm sorry for this huge delay, but I don't receive notifications or emails. I will check manually in the future.