source: general/graphlib/poppler.xml@ e2cae8d

12.1 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18
Last change on this file since e2cae8d was 65bce57f, checked in by Pierre Labastie <pierre.labastie@…>, 9 months ago

Make Qt5 recommended for poppler

Recently, upstream has changed the way Qt5 is detected: if Qt5
is not installed, you have to pass -DENABLE_QT5=OFF, otherwise
cmake stops with an error. Previously, a non present Qt5 was
not fatal. But passing -DENABLE_QT5=OFF when qt5 is installed
prevents building the poppler-qt5 library, which is needed by
okular, one of the main users of poppler.
Until now we had Qt5 as optional, since building full Qt5 for other
users of poppler (mainly inkscape, other users can benefit of qt5)
was kind of overkill. But now we have qt5-alternate, and also
this change in behavior of poppler. So it seems it is acceptable
to have qt5 or qt5-alternate as recommended.

  • Property mode set to 100644
File size: 15.9 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY poppler-download-http "https://poppler.freedesktop.org/poppler-&poppler-version;.tar.xz">
8 <!ENTITY poppler-download-ftp " ">
9 <!ENTITY poppler-md5sum "3be79099d8725debef73ea07502b771a">
10 <!ENTITY poppler-size "1.8 MB">
11 <!ENTITY poppler-buildsize "92 MB (with Qt5 library and tests)">
12 <!ENTITY poppler-time "0.9 SBU (with parallelism=4, Qt5 library, and tests)">
13 <!-- Time increase might be due to git.freedesktop.org -->
14
15 <!ENTITY poppler-data-version "0.4.12">
16
17 <!ENTITY poppler-data-download-http "https://poppler.freedesktop.org/poppler-data-&poppler-data-version;.tar.gz">
18 <!ENTITY poppler-data-md5sum "67ee4a40aa830b1f6e2560ce5f6471ba">
19 <!ENTITY poppler-data-size "4.3 MB">
20 <!ENTITY poppler-data-buildsize "26 MB">
21 <!ENTITY poppler-data-time "less than 0.1 SBU">
22]>
23
24<sect1 id="poppler" xreflabel="Poppler-&poppler-version;">
25 <?dbhtml filename="poppler.html"?>
26
27
28 <title>Poppler-&poppler-version;</title>
29
30 <indexterm zone="poppler">
31 <primary sortas="a-Poppler">Poppler</primary>
32 </indexterm>
33
34 <sect2 role="package">
35 <title>Introduction to Poppler</title>
36
37 <para>
38 The <application>Poppler</application> package contains a PDF rendering
39 library and command line tools used to manipulate PDF files. This is
40 useful for providing PDF rendering functionality as a shared library.
41 </para>
42
43 &lfs120_checked;
44
45 <bridgehead renderas="sect3">Package Information</bridgehead>
46 <itemizedlist spacing="compact">
47 <listitem>
48 <para>
49 Download (HTTP): <ulink url="&poppler-download-http;"/>
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download (FTP): <ulink url="&poppler-download-ftp;"/>
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download MD5 sum: &poppler-md5sum;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Download size: &poppler-size;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Estimated disk space required: &poppler-buildsize;
70 </para>
71 </listitem>
72 <listitem>
73 <para>
74 Estimated build time: &poppler-time;
75 </para>
76 </listitem>
77 </itemizedlist>
78
79 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
80
81 <itemizedlist spacing="compact">
82 <title>Poppler Encoding Data</title>
83 <listitem>
84 <para>
85 Download (HTTP): <ulink url="&poppler-data-download-http;"/>
86 </para>
87 </listitem>
88 <listitem>
89 <para>
90 Download MD5 sum: &poppler-data-md5sum;
91 </para>
92 </listitem>
93 <listitem>
94 <para>
95 Download size: &poppler-data-size;
96 </para>
97 </listitem>
98 <listitem>
99 <para>
100 Estimated disk space required: &poppler-data-buildsize;
101 </para>
102 </listitem>
103 <listitem>
104 <para>
105 Estimated build time: &poppler-data-time;
106 </para>
107 </listitem>
108 </itemizedlist>
109
110 <para>
111 The additional package consists of encoding files for use with
112 <application>Poppler</application>. The encoding files are optional and
113 <application>Poppler</application> will automatically read them if they
114 are present. When installed, they enable
115 <application>Poppler</application> to render CJK and Cyrillic properly.
116 </para>
117
118 <bridgehead renderas="sect3">Poppler Dependencies</bridgehead>
119
120 <bridgehead renderas="sect4">Required</bridgehead>
121 <para role="required">
122 <xref linkend="cmake"/>,
123 <xref linkend="fontconfig"/>, and
124 <xref linkend="gobject-introspection"/>
125 </para>
126
127 <bridgehead renderas="sect4">Recommended</bridgehead>
128 <para role="recommended">
129 <xref linkend="boost"/>,
130 <xref linkend="cairo"/>,
131 <xref linkend="lcms2"/>,
132 <xref linkend="libjpeg"/>,
133 <xref linkend="libpng"/>,
134 <xref linkend="nss"/>,
135 <xref linkend="openjpeg2"/>, and
136 &qt5-deps;
137 (required for PDF support in <xref role="nodep" linkend="okular5"/>)
138 </para>
139
140 <bridgehead renderas="sect4">Optional</bridgehead>
141 <para role="optional">
142 <xref linkend="curl"/>,
143 <xref linkend="gdk-pixbuf"/>,
144 <xref linkend="git"/> (for downloading test files),
145 <xref linkend="gpgme"/>,
146 <xref linkend="gtk-doc"/>,
147 <xref linkend="gtk3"/>,
148 <xref linkend="libtiff"/>, and
149 <ulink url="https://download.qt.io/archive/qt/">Qt-6.2 or later</ulink>.
150
151 </para>
152
153 </sect2>
154
155 <sect2 role="installation">
156 <title>Installation of Poppler</title>
157
158 <para>
159 Install <application>Poppler</application> by running the following
160 commands:
161 </para>
162
163<screen><userinput>mkdir build &amp;&amp;
164cd build &amp;&amp;
165
166cmake -DCMAKE_BUILD_TYPE=Release \
167 -DCMAKE_INSTALL_PREFIX=/usr \
168 -DTESTDATADIR=$PWD/testfiles \
169 -DENABLE_QT6=OFF \
170 -DENABLE_UNSTABLE_API_ABI_HEADERS=ON \
171 .. &amp;&amp;
172make</userinput></screen>
173
174 <para>
175 In order to run the test suite, some testcases are needed and can
176 be obtained only from a git repository. The command to download
177 them is:
178<command>git clone --depth 1 https://gitlab.freedesktop.org/poppler/test.git testfiles</command>.
179 Then issue: <command>LC_ALL=en_US.UTF-8 make test</command>.
180 </para>
181
182 <para>
183 Now, as the <systemitem class="username">root</systemitem> user:
184 </para>
185
186<screen role="root"><userinput>make install</userinput></screen>
187
188 <para>
189 To install the documentation, run the following commands as
190 <systemitem class="username">root</systemitem>:
191 </para>
192
193<screen role="root"><userinput>install -v -m755 -d /usr/share/doc/poppler-&poppler-version; &amp;&amp;
194cp -vr ../glib/reference/html /usr/share/doc/poppler-&poppler-version;</userinput></screen>
195
196<!-- ==== Poppler Data ====== -->
197 <bridgehead renderas="sect3">Poppler Data</bridgehead>
198
199 <para>
200 If you downloaded the additional encoding data package, install it by
201 issuing the following commands:
202 </para>
203
204<screen><userinput>tar -xf ../../poppler-data-&poppler-data-version;.tar.gz &amp;&amp;
205cd poppler-data-&poppler-data-version;</userinput></screen>
206
207 <para>
208 Now, as the <systemitem class="username">root</systemitem> user:
209 </para>
210
211<screen role="root"><userinput>make prefix=/usr install</userinput></screen>
212
213 </sect2>
214
215 <sect2 role="commands">
216 <title>Command Explanations</title>
217
218 <para>
219 <parameter>-DCMAKE_BUILD_TYPE=Release</parameter>: This switch is used
220 to apply a higher level of compiler optimizations.
221 </para>
222
223 <para>
224 <parameter>-DTESTDATADIR=$PWD/testfiles</parameter>: Tells the test
225 programs where the auxiliary files are located.
226 </para>
227
228 <para>
229 <parameter>-DENABLE_QT6=OFF</parameter>: This switch is needed to
230 prevent an error when Qt6 is not installed. Remove it if you
231 have installed qt-6.2 or later.
232 </para>
233
234 <para>
235 <parameter>-DENABLE_UNSTABLE_API_ABI_HEADERS=ON</parameter>: Installs some old
236 <application>Xpdf</application> headers required by certain programs.
237 <!--(e.g. <application>Inkscape</application>).-->
238 </para>
239
240 <para>
241 <option>-DENABLE_GTK_DOC=ON</option>: Use this parameter if
242 GTK-Doc <!--and Pygments--> is installed and you wish to rebuild and
243 install the API documentation.
244 </para>
245
246 <para>
247 <option>-DENABLE_QT5=OFF</option>: Use this parameter if
248 &qt5-deps; is not installed.
249 </para>
250
251 <para>
252 <option>-DENABLE_BOOST=OFF</option>: Use this parameter if you have
253 not installed <application>boost</application> (the Splash backend for
254 Qt5 recommends boost).
255 </para>
256
257 <para>
258 <command>LC_ALL=en_US.UTF-8 make test</command>: Runs the test suite.
259 The environment variable LC_ALL=en_US.UTF-8 is only needed if the
260 default locale does not include UTF-8.
261 </para>
262
263 </sect2>
264
265 <sect2 role="content">
266 <title>Contents</title>
267
268 <segmentedlist>
269 <segtitle>Installed Programs</segtitle>
270 <segtitle>Installed Libraries</segtitle>
271 <segtitle>Installed Directories</segtitle>
272
273 <seglistitem>
274 <seg>
275 pdfattach, pdfdetach, pdffonts, pdfimages, pdfinfo, pdfseparate,
276 pdfsig, pdftocairo, pdftohtml, pdftoppm, pdftops, pdftotext, and
277 pdfunite
278 </seg>
279 <seg>
280 libpoppler.so,
281 libpoppler-cpp.so,
282 libpoppler-glib.so, and
283 libpoppler-qt5.so
284 </seg>
285 <seg>
286 /usr/include/poppler,
287 /usr/share/poppler, and
288 /usr/share/doc/poppler-&poppler-version;
289 </seg>
290 </seglistitem>
291 </segmentedlist>
292
293 <variablelist>
294 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
295 <?dbfo list-presentation="list"?>
296 <?dbhtml list-presentation="table"?>
297
298 <varlistentry id="pdfattach">
299 <term><command>pdfattach</command></term>
300 <listitem>
301 <para>
302 adds a new embedded file to an existing PDF file
303 </para>
304 <indexterm zone="poppler pdfattach">
305 <primary sortas="b-pdfattach">pdfattach</primary>
306 </indexterm>
307 </listitem>
308 </varlistentry>
309
310 <varlistentry id="pdfdetach">
311 <term><command>pdfdetach</command></term>
312 <listitem>
313 <para>
314 lists or extracts embedded files from PDF files
315 </para>
316 <indexterm zone="poppler pdfdetach">
317 <primary sortas="b-pdfdetach">pdfdetach</primary>
318 </indexterm>
319 </listitem>
320 </varlistentry>
321
322 <varlistentry id="pdffonts">
323 <term><command>pdffonts</command></term>
324 <listitem>
325 <para>
326 lists the fonts used in a PDF file along with various information
327 for each font
328 </para>
329 <indexterm zone="poppler pdffonts">
330 <primary sortas="b-pdffonts">pdffonts</primary>
331 </indexterm>
332 </listitem>
333 </varlistentry>
334
335 <varlistentry id="pdfimages">
336 <term><command>pdfimages</command></term>
337 <listitem>
338 <para>
339 saves images from a PDF file as PPM, PBM, or JPEG files
340 </para>
341 <indexterm zone="poppler pdfimages">
342 <primary sortas="b-pdfimages">pdfimages</primary>
343 </indexterm>
344 </listitem>
345 </varlistentry>
346
347 <varlistentry id="pdfinfo">
348 <term><command>pdfinfo</command></term>
349 <listitem>
350 <para>
351 prints the contents of the 'Info' dictionary (plus some other useful
352 information) from a PDF file
353 </para>
354 <indexterm zone="poppler pdfinfo">
355 <primary sortas="b-pdfinfo">pdfinfo</primary>
356 </indexterm>
357 </listitem>
358 </varlistentry>
359
360 <varlistentry id="pdfseparate">
361 <term><command>pdfseparate</command></term>
362 <listitem>
363 <para>
364 extracts single pages from a PDF file
365 </para>
366 <indexterm zone="poppler pdfseparate">
367 <primary sortas="b-pdseparate">pdfseparate</primary>
368 </indexterm>
369 </listitem>
370 </varlistentry>
371
372 <varlistentry id="pdfsig">
373 <term><command>pdfsig</command></term>
374 <listitem>
375 <para>
376 verifies the digital signatures in a PDF document
377 </para>
378 <indexterm zone="poppler pdfsig">
379 <primary sortas="b-pdseparate">pdfsig</primary>
380 </indexterm>
381 </listitem>
382 </varlistentry>
383
384 <varlistentry id="pdftocairo">
385 <term><command>pdftocairo</command></term>
386 <listitem>
387 <para>
388 converts a PDF file to one of several formats (PNG, JPEG, PDF, PS,
389 EPS, SVG) using the cairo output device of the poppler library
390 </para>
391 <indexterm zone="poppler pdftocairo">
392 <primary sortas="b-pdftocairo">pdftocairo</primary>
393 </indexterm>
394 </listitem>
395 </varlistentry>
396
397 <varlistentry id="pdftohtml">
398 <term><command>pdftohtml</command></term>
399 <listitem>
400 <para>
401 converts a PDF file to HTML
402 </para>
403 <indexterm zone="poppler pdftohtml">
404 <primary sortas="b-pdftohtml">pdftohtml</primary>
405 </indexterm>
406 </listitem>
407 </varlistentry>
408
409 <varlistentry id="pdftoppm">
410 <term><command>pdftoppm</command></term>
411 <listitem>
412 <para>
413 converts PDF files to PBM, PGM and PPM formats
414 </para>
415 <indexterm zone="poppler pdftoppm">
416 <primary sortas="b-pdftoppm">pdftoppm</primary>
417 </indexterm>
418 </listitem>
419 </varlistentry>
420
421 <varlistentry id="pdftops">
422 <term><command>pdftops</command></term>
423 <listitem>
424 <para>
425 converts PDF files to Postscript format
426 </para>
427 <indexterm zone="poppler pdftops">
428 <primary sortas="b-pdftops">pdftops</primary>
429 </indexterm>
430 </listitem>
431 </varlistentry>
432
433 <varlistentry id="pdftotext">
434 <term><command>pdftotext</command></term>
435 <listitem>
436 <para>
437 converts PDF files to plain text
438 </para>
439 <indexterm zone="poppler pdftotext">
440 <primary sortas="b-pdftotext">pdftotext</primary>
441 </indexterm>
442 </listitem>
443 </varlistentry>
444
445 <varlistentry id="pdfunite">
446 <term><command>pdfunite</command></term>
447 <listitem>
448 <para>
449 merges several PDF files, in the order of their occurrence on the
450 command line, to one PDF output file
451 </para>
452 <indexterm zone="poppler pdfunite">
453 <primary sortas="b-pdfunite">pdfunite</primary>
454 </indexterm>
455 </listitem>
456 </varlistentry>
457
458 <varlistentry id="libpoppler">
459 <term><filename class="libraryfile">libpoppler.so</filename></term>
460 <listitem>
461 <para>
462 contains the API functions to render PDF files
463 </para>
464 <indexterm zone="poppler libpoppler">
465 <primary sortas="c-libpoppler">libpoppler.so</primary>
466 </indexterm>
467 </listitem>
468 </varlistentry>
469
470 <varlistentry id="libpoppler-cpp">
471 <term><filename class="libraryfile">libpoppler-cpp.so</filename></term>
472 <listitem>
473 <para>
474 is a C++ backend for rendering PDF files
475 </para>
476 <indexterm zone="poppler libpoppler-cpp">
477 <primary sortas="c-libpoppler-cpp">libpoppler-cpp.so</primary>
478 </indexterm>
479 </listitem>
480 </varlistentry>
481
482 <varlistentry id="libpoppler-glib">
483 <term><filename class="libraryfile">libpoppler-glib.so</filename></term>
484 <listitem>
485 <para>
486 is a wrapper library used to interface the PDF rendering functions
487 with <application>GTK+</application>
488 </para>
489 <indexterm zone="poppler libpoppler-glib">
490 <primary sortas="c-libpoppler-glib">libpoppler-glib.so</primary>
491 </indexterm>
492 </listitem>
493 </varlistentry>
494
495 <varlistentry id="libpoppler-qt5">
496 <term><filename class="libraryfile">libpoppler-qt5.so</filename></term>
497 <listitem>
498 <para>
499 is a wrapper library used to interface the PDF rendering functions
500 with <application>Qt</application>5
501 </para>
502 <indexterm zone="poppler libpoppler-qt5">
503 <primary sortas="c-libpoppler-qt5">libpoppler-qt5.so</primary>
504 </indexterm>
505 </listitem>
506 </varlistentry>
507
508 </variablelist>
509
510 </sect2>
511
512</sect1>
Note: See TracBrowser for help on using the repository browser.