View Issue Details

IDProjectCategoryView StatusLast Update
0017573ScribusBuild Systempublic2025-07-05 16:34
Reporterponce Assigned Tojghali  
PrioritynormalSeverityblockReproducibilityalways
Status resolvedResolutionfixed 
Product Version1.6.4 
Fixed in Version1.6.5.svn 
Summary0017573: Fails to build with poppler 25.07
DescriptionScribus fails to build against poppler-25.07

[ 65%] Built target importpdf_autogen_timestamp_deps
[ 65%] Automatic MOC and UIC for target importpdf
[ 65%] Built target importpdf_autogen
[ 65%] Building CXX object scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/importpdf_autogen/mocs_compilation.cpp.o
[ 65%] Building CXX object scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/importpdf.cpp.o
[ 66%] Building CXX object scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/importpdfplugin.cpp.o
[ 66%] Building CXX object scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/pdfimportoptions.cpp.o
[ 66%] Building CXX object scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/pdftextrecognition.cpp.o
[ 66%] Building CXX object scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/slaoutput.cpp.o
/tmp/SBo/scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp: In member function ‘virtual void SlaOutputDev::updateFont(GfxState*)’:
/tmp/SBo/scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp:3262:56: error: no matching function for call to ‘FoFiTrueType::make(unsigned char*, std::vector<unsigned char>::size_type, int&)’
 3262 | ff = FoFiTrueType::make(fontsrc->buf.data(), fontsrc->buf.size(), fontLoc->fontNum);
      | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/SBo/scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp:3262:56: note: there is 1 candidate
In file included from /tmp/SBo/scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp:18:
/usr/include/poppler/fofi/FoFiTrueType.h:60:42: note: candidate 1: ‘static std::unique_ptr<FoFiTrueType> FoFiTrueType::make(std::span<unsigned char>, int)’
   60 | static std::unique_ptr<FoFiTrueType> make(std::span<unsigned char> data, int faceIndexA);
      | ^~~~
/usr/include/poppler/fofi/FoFiTrueType.h:60:42: note: candidate expects 2 arguments, 3 provided
/tmp/SBo/scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp:3407:64: error: no matching function for call to ‘FoFiTrueType::make(unsigned char*, std::vector<unsigned char>::size_type, int&)’
 3407 | ff = FoFiTrueType::make(fontsrc->buf.data(), fontsrc->buf.size(), fontLoc->fontNum);
      | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/SBo/scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp:3407:64: note: there is 1 candidate
/usr/include/poppler/fofi/FoFiTrueType.h:60:42: note: candidate 1: ‘static std::unique_ptr<FoFiTrueType> FoFiTrueType::make(std::span<unsigned char>, int)’
   60 | static std::unique_ptr<FoFiTrueType> make(std::span<unsigned char> data, int faceIndexA);
      | ^~~~
/usr/include/poppler/fofi/FoFiTrueType.h:60:42: note: candidate expects 2 arguments, 3 provided
/tmp/SBo/scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp:3132:13: warning: unused variable ‘faceIndex’ [-Wunused-variable]
 3132 | int faceIndex = 0;
      | ^~~~~~~~~
make[2]: *** [scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/build.make:150: scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/slaoutput.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:6569: scribus/plugins/import/pdf/CMakeFiles/importpdf.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
Steps To Reproducetry building scribus 1.6.4, already patched for poppler-25.06, against poppler-25.07
Additional InformationOS: Slackware64-current
gcc: 15.1
TagsNo tags attached.
PatchNo

Relationships

has duplicate 0017572 closedjghali Scribus 1.6.4 fails to compile with Poppler 25.07: FoFiTrueType::make() signature mismatch 

Activities

ponce

2025-07-05 15:28

reporter  

scribus-1.6.4_poppler-25.06.patch (789 bytes)   
diff -Naur scribus-1.6.4.orig/scribus/plugins/import/pdf/slaoutput.cpp scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp
--- scribus-1.6.4.orig/scribus/plugins/import/pdf/slaoutput.cpp	2025-04-20 15:52:19.000000000 +0200
+++ scribus-1.6.4/scribus/plugins/import/pdf/slaoutput.cpp	2025-06-05 07:06:10.719000000 +0200
@@ -606,7 +606,12 @@
 		FormWidget *fm = m_formWidgets->getWidget(i);
 		if (!fm)
 			continue;
-		AnnotWidget *ano = fm->getWidgetAnnotation();
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(25, 06, 0)
+		std::shared_ptr<AnnotWidget> anoSharedPtr = fm->getWidgetAnnotation();
+		AnnotWidget* ano = anoSharedPtr.get();
+#else
+		AnnotWidget* ano = fm->getWidgetAnnotation();
+#endif
 		if (!ano)
 			continue;
 		if (ano != (AnnotWidget*) annota)

jghali

2025-07-05 15:51

administrator   ~0052875

Last edited: 2025-07-05 15:54

This has been already fixed yesterday in 1.6.5.svn (r26941) and trunk (r26940)

ponce

2025-07-05 16:34

reporter   ~0052877

thanks!

FWIW I leave here the patch, if useful for others

svn diff -c r26941 . > ../scribus-1.6.4_poppler-25.07.patch
scribus-1.6.4_poppler-25.07.patch (1,707 bytes)   
Index: scribus/plugins/import/pdf/slaoutput.cpp
===================================================================
--- scribus/plugins/import/pdf/slaoutput.cpp	(revision 26940)
+++ scribus/plugins/import/pdf/slaoutput.cpp	(revision 26941)
@@ -3255,10 +3255,15 @@
 			break;
 		case fontTrueType:
 		case fontTrueTypeOT:
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(24, 11, 0)
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(25, 7, 0)
 			if (!fileName.empty())
 				ff = FoFiTrueType::load(fileName.c_str(), fontLoc->fontNum);
 			else
+				ff = FoFiTrueType::make(fontsrc->buf, fontLoc->fontNum);
+#elif POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(24, 11, 0)
+			if (!fileName.empty())
+				ff = FoFiTrueType::load(fileName.c_str(), fontLoc->fontNum);
+			else
 				ff = FoFiTrueType::make(fontsrc->buf.data(), fontsrc->buf.size(), fontLoc->fontNum);
 #elif POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
 			if (!fileName.empty())
@@ -3400,10 +3405,15 @@
 #endif
 			else
 			{
-#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(24, 11, 0)
+#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(25, 7, 0)
 				if (!fileName.empty())
 					ff = FoFiTrueType::load(fileName.c_str(), fontLoc->fontNum);
 				else
+					ff = FoFiTrueType::make(fontsrc->buf, fontLoc->fontNum);
+#elif POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(24, 11, 0)
+				if (!fileName.empty())
+					ff = FoFiTrueType::load(fileName.c_str(), fontLoc->fontNum);
+				else
 					ff = FoFiTrueType::make(fontsrc->buf.data(), fontsrc->buf.size(), fontLoc->fontNum);
 #elif POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(22, 4, 0)
 				if (!fileName.empty())

Issue History

Date Modified Username Field Change
2025-07-05 15:28 ponce New Issue
2025-07-05 15:28 ponce File Added: scribus-1.6.4_poppler-25.06.patch
2025-07-05 15:51 jghali Assigned To => jghali
2025-07-05 15:51 jghali Status new => resolved
2025-07-05 15:51 jghali Resolution open => fixed
2025-07-05 15:51 jghali Fixed in Version => 1.6.5.svn
2025-07-05 15:51 jghali Note Added: 0052875
2025-07-05 15:54 jghali Relationship added has duplicate 0017572
2025-07-05 15:54 jghali Note Edited: 0052875
2025-07-05 16:34 ponce Note Added: 0052877
2025-07-05 16:34 ponce File Added: scribus-1.6.4_poppler-25.07.patch