source: xsoft/other/inkscape.xml@ a353c3a

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 9.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since a353c3a was a353c3a, checked in by Douglas R. Reno <renodr@…>, 5 years ago

Adjust Inkscape to build with poppler-0.82.0

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@22317 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 10.3 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 <!ENTITY inkscape-download-http "https://media.inkscape.org/dl/resources/file/inkscape-&inkscape-version;.tar.bz2">
7 <!ENTITY inkscape-download-ftp " ">
8 <!ENTITY inkscape-md5sum "ac30f6d5747fd9c620c00dad500f414f">
9 <!ENTITY inkscape-size "30 MB">
10 <!ENTITY inkscape-buildsize "534 MB (134 MB installed, add 8 MB for tests)">
11 <!ENTITY inkscape-time "4.8 SBU (add 0.2 SBU for tests, both with parallelism=4)">
12]>
13
14<sect1 id="inkscape" xreflabel="Inkscape-&inkscape-version;">
15 <?dbhtml filename="inkscape.html"?>
16
17 <sect1info>
18 <othername>$LastChangedBy$</othername>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>Inkscape-&inkscape-version;</title>
23
24 <indexterm zone="inkscape">
25 <primary sortas="a-Inkscape">Inkscape</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to Inkscape</title>
30
31 <para>
32 <application>Inkscape</application> is a what you see is what you get
33 Scalable Vector Graphics editor. It is useful for creating, viewing and
34 changing SVG images.
35 </para>
36
37 &lfs90_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>
43 Download (HTTP): <ulink url="&inkscape-download-http;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download (FTP): <ulink url="&inkscape-download-ftp;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download MD5 sum: &inkscape-md5sum;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download size: &inkscape-size;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated disk space required: &inkscape-buildsize;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated build time: &inkscape-time;
69 </para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
74 <itemizedlist spacing="compact">
75 <listitem>
76 <para>Required patch: <ulink url="&patch-root;/inkscape-&inkscape-version;-use_versioned_ImageMagick6-1.patch"/></para>
77 </listitem>
78 <listitem>
79 <para>Required patch: <ulink url="&patch-root;/inkscape-&inkscape-version;-upstream_fixes-1.patch"/></para>
80 </listitem>
81 <listitem>
82 <para>Required patch: <ulink url="&patch-root;/inkscape-&inkscape-version;-poppler_0_82_0_fixes-1.patch"/></para>
83 </listitem>
84 </itemizedlist>
85
86 <bridgehead renderas="sect3">Inkscape Dependencies</bridgehead>
87
88 <bridgehead renderas="sect4">Required</bridgehead>
89 <para role="required">
90 <xref linkend="boost"/>,
91 <xref linkend="gc"/>,
92 <xref linkend="gsl"/>,
93 <xref linkend="gtkmm2"/>
94 (or <xref linkend="gtkmm3"/> and
95 <ulink url="http://ftp.gnome.org/pub/gnome/sources/gdl/">gnome docking library</ulink>
96 for the experimental gtk+-3 build),
97 <xref linkend="libxslt"/>,
98 <xref linkend="poppler"/>,
99 <xref linkend="popt"/> and
100 <xref linkend="wget"/> (to download the test dependencies)
101 </para>
102
103 <bridgehead renderas="sect4">Recommended</bridgehead>
104 <para role="recommended">
105 <xref linkend="imagemagick6"/>,
106 <xref linkend="lcms2"/> or
107 <xref role="nodep" linkend="lcms"/>,
108 <xref linkend="libcanberra"/> (to eliminate plugin warnings),
109 <xref linkend="potrace"/> (for the bucket-fill tool),
110 <xref role="runtime" linkend="lxml"/> and
111 <xref role="runtime" linkend="scour"/> (both at runtime, for Save As
112 Optimized SVG).
113 </para>
114
115 <bridgehead renderas="sect4">Optional</bridgehead>
116 <para role="optional">
117 <xref linkend="aspell"/>,
118 <xref linkend="dbus"/> (to run inkscape from scripts),
119 <xref linkend="doxygen"/>,
120
121 <!-- these document foundation links work from firefox's address bar, or
122 from google (pages telling you how to get it from git), but when I link
123 them here I get "There is currently no text in this page...". Ken or
124 developer: wiki.documentfoundation.org pages don't like trailing / -->
125 <!--<ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libcdr">libcdr</ulink>,
126 <ulink url="https://wiki.documentfoundation.org/DLP/Libraries/libvisio">libvisio</ulink>,-->
127 <ulink url="https://github.com/LibreOffice/libcdr">libcdr</ulink>,
128 <ulink url="https://github.com/LibreOffice/libvisio">libvisio</ulink>,
129 <ulink url="http://libwpg.sourceforge.net/">libwpg</ulink> (or
130 <ulink url="http://libwpd.sourceforge.net/">libwpd</ulink>) and
131 <ulink role="runtime"
132 url="https://sourceforge.net/projects/NumPy/files/">NumPy</ulink>
133 (at runtime for some extensions)
134 </para>
135
136 <bridgehead renderas="sect4">Optional Runtime Dependencies
137 (for some of the Inkscape extensions)</bridgehead>
138 <para role="optional">
139 <ulink role="runtime"
140 url="https://metacpan.org/pod/release/TJMATHER/XML-XQL-0.68/lib/XML/XQL.pm">XML::XQL</ulink>
141 </para>
142
143 <para condition="html" role="usernotes">
144 User Notes: <ulink url="&blfs-wiki;/inkscape"/>
145 </para>
146 </sect2>
147
148 <sect2 role="installation">
149 <title>Installation of Inkscape</title>
150
151 <para>
152 First, fix a problem introduced by Poppler-0.76.1.
153 </para>
154
155<screen><userinput remap="pre">sed -e 's|new Lexer(xref, obj)|obj|g' -i src/extension/internal/pdfinput/pdf-parser.cpp</userinput></screen>
156
157 <para>
158 Next, fix Inkscape to be able to build with poppler-0.82.0 and higher:
159 </para>
160
161<screen><userinput remap="pre">patch -Np1 -i ../inkscape-&inkscape-version;-poppler_0_82_0_fixes-1.patch</userinput></screen>
162
163 <para>
164 Ensure that the libraries from <xref linkend="imagemagick6"/> can be used:
165 </para>
166
167<screen><userinput>patch -Np1 -i ../inkscape-&inkscape-version;-use_versioned_ImageMagick6-1.patch</userinput></screen>
168
169 <para>
170 Apply a patch to prevent out-of-bounds writes in the text and fill-bucket
171 tools:
172 </para>
173
174<screen><userinput>patch -Np1 -i ../inkscape-&inkscape-version;-upstream_fixes-1.patch</userinput></screen>
175
176<!-- If there is no test suite, then this is not needed.
177 There is none if the command below is not run. -->
178 <para>
179 If you wish to run the testsuite, download the required versions of
180 <application>googletest</application> and
181 <application>googlemock</application> by running:
182 </para>
183
184<screen remap="test"><userinput>bash download-gtest.sh</userinput></screen>
185
186 <para>
187 Install <application>Inkscape</application> by running the following
188 commands:
189 </para>
190
191<screen><userinput>mkdir build &amp;&amp;
192cd build &amp;&amp;
193
194cmake -DCMAKE_INSTALL_PREFIX=/usr \
195 -DCMAKE_BUILD_TYPE=Release \
196 .. &amp;&amp;
197make</userinput></screen>
198
199 <para>
200 To test the results, issue: <command>make check</command>.<!-- Ken or
201 other devs, there is no test suite in this package. -renodr
202 A small test suite is built if you download the necessary programs
203 with the command above (bash download-gtest.sh) -pierre
204 This package does not come with a test suite. -->
205 </para>
206
207 <para>
208 Now, as the <systemitem class="username">root</systemitem> user:
209 </para>
210
211<screen role="root"><userinput>make install &amp;&amp;
212rm -v /usr/lib/inkscape/lib*_LIB.a</userinput></screen>
213
214 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
215 href="../../xincludes/update-icons-and-desktop.xml"/>
216
217 </sect2>
218
219 <sect2 role="commands">
220 <title>Command Explanations</title>
221
222 <para>
223 <parameter>-DCMAKE_BUILD_TYPE=Release</parameter>: This switch is used to
224 build the release library without any debug `assert` in the code.
225 </para>
226
227 <para>
228 <parameter>rm -v /usr/lib/inkscape/lib*_LIB.a</parameter>: The conversion
229 of the package to use <command>cmake</command> has led to these libraries
230 getting installed, but they are not usable (there are no header files to
231 let a program know what they contain). So remove them.
232 </para>
233
234 <para>
235 <option>-DWITH_DBUS=ON</option>: use this if you wish to use
236 <command>inkscape</command> in interactive scripts which manipulate
237 images.
238 </para>
239
240 </sect2>
241
242 <sect2 role="content">
243 <title>Contents</title>
244
245 <segmentedlist>
246 <segtitle>Installed Programs</segtitle>
247 <segtitle>Installed Library</segtitle>
248 <segtitle>Installed Directories</segtitle>
249
250 <seglistitem>
251 <seg>
252 inkscape and inkview
253 </seg>
254 <seg>
255 libinkscape_base.so
256 </seg>
257 <seg>
258 /usr/lib/inkscape and /usr/share/inkscape
259 </seg>
260 </seglistitem>
261 </segmentedlist>
262
263 <variablelist>
264 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
265 <?dbfo list-presentation="list"?>
266 <?dbhtml list-presentation="table"?>
267
268 <varlistentry id="inkscape-prog">
269 <term><command>inkscape</command></term>
270 <listitem>
271 <para>
272 an SVG (Scalable Vector Graphics) editing program.
273 </para>
274 <indexterm zone="inkscape inkscape-prog">
275 <primary sortas="b-inkscape">inkscape</primary>
276 </indexterm>
277 </listitem>
278 </varlistentry>
279
280 <varlistentry id="inkview">
281 <term><command>inkview</command></term>
282 <listitem>
283 <para>
284 is a simple program for displaying SVG files.
285 </para>
286 <indexterm zone="inkscape inkview">
287 <primary sortas="b-inkview">inkview</primary>
288 </indexterm>
289 </listitem>
290 </varlistentry>
291
292 <varlistentry id="libinkscape_base">
293 <term><filename class="libraryfile">libinkscape_base.so</filename></term>
294 <listitem>
295 <para>
296 provides the routines used by inkscape and inkview.
297 </para>
298 <indexterm zone="inkscape libinkscape_base">
299 <primary sortas="c-libinkscape_base">libinkscape_base.so</primary>
300 </indexterm>
301 </listitem>
302 </varlistentry>
303
304 </variablelist>
305
306 </sect2>
307
308</sect1>
Note: See TracBrowser for help on using the repository browser.