source: xsoft/other/inkscape.xml@ e20c93bd

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 9.0 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 e20c93bd was e20c93bd, checked in by Ken Moffat <ken@…>, 5 years ago

Inkscape - apply patch to fix out-of-bounds writes.

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

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