Package Details: pdf2djvu 0.9.19-7

Git Clone URL: https://aur.archlinux.org/pdf2djvu.git (read-only, click to copy)
Package Base: pdf2djvu
Description: Creates DjVu files from PDF files
Upstream URL: https://jwilk.net/software/pdf2djvu
Licenses: GPL
Submitter: arojas
Maintainer: blueowl
Last Packager: blueowl
Votes: 7
Popularity: 0.000155
First Submitted: 2021-05-08 09:21 (UTC)
Last Updated: 2026-06-30 09:20 (UTC)

Latest Comments

1 2 3 4 Next › Last »

simona commented on 2026-06-30 09:41 (UTC)

solved. tnx for patch.

blueowl commented on 2026-06-30 09:22 (UTC)

Updated.

@amos, thanks for the patch.

amos commented on 2026-06-18 13:20 (UTC)

Two more required patches:

@@ -163,7 +163,11 @@ static void cmyk_to_rgb(const double cmyk[], double rgb[])
   pdf::gfx::RgbColor rgb_cc;
   for (int i = 0; i < 4; i++)
     cmyk_cc.c[i] = pdf::gfx::double_as_color_component(cmyk[i]);
+#if POPPLER_VERSION >= 260600
+  cmyk_space.getRGB(cmyk_cc, &rgb_cc);
+#else
   cmyk_space.getRGB(&cmyk_cc, &rgb_cc);
+#endif
   rgb[0] = pdf::gfx::color_component_as_double(rgb_cc.r);
   rgb[1] = pdf::gfx::color_component_as_double(rgb_cc.g);
   rgb[2] = pdf::gfx::color_component_as_double(rgb_cc.b);
@@ -175,7 +175,11 @@ -static bool annotations_callback(pdf::ant::Annotation *annotation, void *user_data)
   std::string border_color;
   if (annotation->getType() != pdf::ant::Annotation::typeLink)
     return true;
+#if POPPLER_VERSION >= 260600
+  const pdf::ant::Color *color = annotation->getColor();
+#else
   pdf::ant::Color *color = annotation->getColor();
+#endif
   if (color == nullptr)
   {
     border_colors.push_back("");

FriedrichFroebel commented on 2026-05-24 20:02 (UTC)

This build failure is related to poppler 26.05.0 having been released and removing this type. Unfortunately, there regularly are upstream changes to poppler which tend to break functionality of pdf2djvu.

As mentioned in one of the previous comments, I am currently trying to keep a fork of the archived pdf2djvu repository compatible with upstream changes, although not doing any explicit releases, thus possibly requiring a dedicated pdf2djvu-git AUR package.

simona commented on 2026-05-15 17:30 (UTC)

autoconf.hh:66:9: warning: ‘POPPLER_VERSION’ redefined
66 | #define POPPLER_VERSION 260500
|         ^
In file included from /usr/include/poppler/Error.h:32,
from /usr/include/poppler/CryptoSignBackend.h:20,
from /usr/include/poppler/PDFDoc.h:57,
from pdf-backend.hh:31:
/usr/include/poppler/poppler-config.h:33:9: note: this is the location of the previous definition
33 | #define POPPLER_VERSION "26.05.0"
|         ^
pdf-backend.hh:66:15: error: ‘SplashCoord’ in namespace ‘::’ does not name a type; did you mean ‘SplashColor’?
66 |     typedef ::SplashCoord Coord;
|               ^~~
|               SplashColor
make: *** [<incorporato>: image-filter.o] Error 1
==> ERRORE: Si è verificato un errore in build().
<(pre>

maison commented on 2026-05-15 16:26 (UTC)

It didn’t work for me.

simona commented on 2026-01-21 20:42 (UTC)

python-nose 1.3.7-19 and python-setuptools 1:80.9.0-4

blueowl commented on 2026-01-21 16:23 (UTC) (edited on 2026-01-21 16:23 (UTC) by blueowl)

It works just fine for me, @simona.
Please make sure your system is up-to-date (pacman -Syu), mainly these pakages
python-nose 1.3.7-19
python-setuptools 1:80.9.0-4

simona commented on 2026-01-20 22:50 (UTC)

Traceback (most recent call last):
File "<string>", line 1, in <module>
import nose; nose.main()
~^^
File "/usr/lib/python3.14/site-packages/nose/core.py", line 118, in init
unittest.TestProgram.init(
~^
self, module=module, defaultTest=defaultTest,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
argv=argv, testRunner=testRunner, testLoader=testLoader,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
**extra_args)
^^^^^^^^^^^^^
File "/usr/lib/python3.14/unittest/main.py", line 103, in init
self.parseArgs(argv)
^^^^^^
File "/usr/lib/python3.14/site-packages/nose/core.py", line 145, in parseArgs
self.config.configure(argv, doc=self.usage())
~^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/nose/config.py", line 281, in configure
options, args = self._parseArgs(argv, cfg_files)
~^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/nose/config.py", line 268, in _parseArgs
self.getParser(), self.configSection, file_error=warn_sometimes)
^^
File "/usr/lib/python3.14/site-packages/nose/config.py", line 590, in getParser
self.plugins.loadPlugins()
^^
File "/usr/lib/python3.14/site-packages/nose/plugins/manager.py", line 381, in loadPlugins
for ep in iter_entry_points(entry_point):
~^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/pkg_resources/init.py", line 741, in <genexpr>
for entry in dist.get_entry_map(group).values()
^^^^^^^
File "/usr/lib/python3.14/site-packages/pkg_resources/init.py", line 3216, in get_entry_map
self._ep_map = EntryPoint.parse_map(
^
self._get_metadata('entry_points.txt'), self
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/lib/python3.14/site-packages/pkg_resources/init.py", line 2884, in parse_map
maps[group] = cls.parse_group(group, lines, dist)
~~~^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/pkg_resources/init.py", line 2854, in parse_group
raise ValueError("Invalid group name", group)

gamesguru commented on 2026-01-14 03:11 (UTC) (edited on 2026-01-19 02:27 (UTC) by gamesguru)

This package is broken as of 1/13/26 due to an update in Poppler (libpoppler.so) that Arch rolled out this morning.

$ pdf2djvu
pdf2djvu: error while loading shared libraries: libpoppler.so.155: cannot open shared object file: No such file or directory

As a temporary workaround, you can try to install 25.12.0-1 (I am fairly confident 26.01.0-1 is the first broken version).

The below patch will also suffice.

You can find a similar one here, I suggest switching your PKGBUILD to use his instead: https://github.com/FriedrichFroebel/pdf2djvu

# 1. Clone the AUR package
git clone https://aur.archlinux.org/pdf2djvu.git
cd pdf2djvu
# or if using yay and fixing a failed install:
#   cd ~/.cache/yay/pdf2djvu

# 2. Download the sources
makepkg -o

# 3. Create the patch file
cat << 'EOF' > pdf2djvu-poppler-26.01.0.patch
--- a/pdf-backend.hh
+++ b/pdf-backend.hh
@@ -49,6 +49,8 @@
 #include <splash/SplashPath.h>
 #include <splash/SplashTypes.h>

+#undef POPPLER_VERSION
+#define POPPLER_VERSION 260100
 #include "i18n.hh"

 namespace pdf
--- a/pdf-backend.cc
+++ b/pdf-backend.cc
@@ -181,7 +181,7 @@ static bool annotations_callback(pdf::ant::Annotation *annotation, void *user_da
     border_colors.push_back("");
     return true;
   }
-  const double *values = color->getValues();
+  const double *values = color->getValues().data();
   switch (color->getSpace())
   {
   case pdf::ant::Color::colorTransparent:
@@ -499,7 +499,7 @@ bool pdf::get_glyph(splash::Splash *splash, splash::Font *font,
   if (font == nullptr)
     return false;
   splash::ClipResult clip_result;
-  if (!font->getGlyph(code, 0, 0, bitmap, static_cast<int>(x), static_cast<int>(y), splash->getClip(), &clip_result))
+  if (!font->getGlyph(code, 0, 0, bitmap, static_cast<int>(x), static_cast<int>(y), const_cast<SplashClip*>(&splash->getClip()), &clip_result))
     return false;
   return (clip_result != splashClipAllOutside);
 }
--- a/system.hh
+++ b/system.hh
@@ -223,7 +223,7 @@ namespace encoding
   protected:
     const std::string &string;
   public:
-    explicit proxy<from, to>(const std::string &string)
+    explicit proxy(const std::string &string)
     : string(string)
     { }
     friend std::ostream &operator << <>(std::ostream &, const proxy<from, to> &);
--- a/pdf-unicode.cc
+++ b/pdf-unicode.cc
@@ -49,7 +49,7 @@ std::string pdf::string_as_utf8(const pdf::String *string)
      */
     const static uint32_t replacement_character = 0xFFFD;
     const char *cstring = pdf::get_c_string(string);
-    size_t clength = string->getLength();
+    size_t clength = string->size();
     std::ostringstream stream;
     if (clength >= 2 && (cstring[0] & 0xFF) == 0xFE && (cstring[1] & 0xFF) == 0xFF) {
         /* UTF-16-BE Byte Order Mark */
EOF

# 4. Apply the patch
cd src/pdf2djvu-0.9.19
git apply ../../pdf2djvu-poppler-26.01.0.patch

# 5. Build and install
cd ../..
makepkg -e -si