2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
3 "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
5 <!ENTITY prodname "<productname>FileManager-Actions</productname>">
6 <!ENTITY nautilus "<productname>Nautilus</productname>">
7 <!ENTITY nemo "<productname>Nemo</productname>">
10 <refentry id="fma-compiling" revision="10 sept 2015">
13 <refentrytitle>Compiling the FileManager-Actions package</refentrytitle>
14 <manvolnum>3</manvolnum>
15 <refmiscinfo>FileManager-Actions</refmiscinfo>
19 <refname>Compiling the FileManager-Actions Package</refname>
21 How to compile FileManager-Actions
25 <refsect1 id="building">
26 <title>Building &prodname; on UNIX</title>
29 On UNIX, &prodname; uses the standard GNU build system,
34 <ulink url="http://www.gnu.org/software/autoconf/">
35 <application>autoconf</application></ulink> for configuring
36 the package and resolving portability issues,
41 <ulink url="http://www.gnu.org/software/automake/">
42 <application>automake</application></ulink> for building
43 makefiles that comply with the GNU Coding Standards;
48 <ulink url="http://www.gnu.org/software/libtool/">
49 <application>libtool</application></ulink> for building
50 shared libraries which target multiple platforms;
55 <ulink url="http://www.freedesktop.org/software/pkgconfig/">pkg-config</ulink>
56 for tracking the compilation flags needed by used libraries
57 (For each library, a small <literal>.pc</literal> text file is
58 installed in a standard location that contains the compilation
59 flags needed for that library along with version number
65 <ulink url="http://www.gnu.org/software/make">GNU make</ulink>
66 for actually building.
69 The &prodname; makefiles will mostly work with different versions
70 of <command>make</command>. However, there tends to be
71 a few incompatibilities, so the &prodname; team recommends
72 installing <ulink url="http://www.gnu.org/software/make">GNU make</ulink>
73 if you don't already have it on your system.
78 The normal sequence for compiling and installing the &prodname;
82 <userinput>./configure</userinput>
83 <userinput>make</userinput>
84 <userinput>make install</userinput>
89 The standard options provided by <application>GNU
90 autoconf</application> may be passed to the
91 <command>configure</command> script. Please see the
92 <ulink url="http://www.gnu.org/software/autoconf/manual/index.html">
93 <application>autoconf</application> documentation</ulink> or run
94 <command>./configure --help</command> for information about
99 <refsect1 id="dependencies">
100 <title>Dependencies</title>
103 &prodname; depends on a number of other libraries.
109 <ulink url="http://library.gnome.org/devel/glib/stable/">GLib</ulink>
110 and <ulink url="http://www.gtk.org/">Gtk+</ulink> are fondamental
111 libraries, both for user interface and for portability and
112 internationalization management.
117 <ulink url="http://xmlsoft.org/">libxml2</ulink> is used to
118 manage XML imports and exports.
123 <ulink url="http://library.gnome.org/devel/libgtop/stable/">libgtop2</ulink>
124 is used to detect and identify running processes as part of the validation
125 process of a candidate context.
130 <ulink url="ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng">libUUID</ulink>
131 is the universally unique ID library used to automatically generate a
132 unique identifier at item creation.
137 <ulink url="http://projects.gnome.org/nautilus/">&nautilus; extension</ulink>
138 is needed if you want build &nautilus; extensions.
144 <ulink url="https://github.com/linuxmint/nemo/">&nemo; extension</ulink>
145 is needed if you want build &nemo; extensions.
152 <refsect1 id="extra-configuration-options">
153 <title>Extra Configuration Options</title>
156 In addition to the normal options, the
157 <command>configure</command> script in the &prodname; package
158 supports these additional arguments:
161 <command>configure</command>
163 <arg>--with-nautilus-extdir=DIR</arg>
165 <arg>with-nemo-extdir=DIR</arg>
167 <arg>--with-default-io-provider=io-gconf|io-desktop</arg>
168 <arg>--enable-html-manuals[=gdt|db2html]</arg>
169 <arg>--enable-pdf-manuals[=dblatex]</arg>
175 <title><systemitem>--with-nautilus-extdir=DIR</systemitem></title>
177 <title><systemitem>with-nemo-extdir=DIR</systemitem></title>
180 With this option, one may define an alternate directory where
181 our file manager extensions will be stored.
184 This is most commonly useful:
189 In development mode, we only have to install symlinks
190 from the file manager standard location to our development
191 tree once. Then, each new version of our libraries
192 will be automatically considered by the file manager.
197 When running <command>make distcheck</command>, so that
198 compiled libraries do not interfere with installed ones.
203 When the file manager is not installed itself in its standard
211 <title><systemitem>--with-default-io-provider=io-desktop</systemitem></title>
213 As of version 3.4, &prodname; GConf is fully deprecated and its support
217 This option lets the packager define which will be the
218 default destination when a new menu or action will be
222 This defaults to "io-desktop" which is the internal
223 identifier of the I/O provider which manages
224 <filename>.desktop</filename> files.
229 <title><systemitem>--enable-html-manuals[=gdt|db2html]</systemitem></title>
231 This option lets the packager regenerate user's manuals
232 from the DocBook sources as HTML documents.
235 All available translations are generated.
238 Building HTML documents from DocBook source can be
239 realized through <application>gnome-doc-tool</application>
240 or <application>db2html</application>.
241 &prodname; defaults to use <application>gnome-doc-tool</application>
242 as its output format better sticks with those of
243 <application>Yelp</application>.
246 As this option is always set when running
247 <command>make distcheck</command>, the packager can be
248 mostly sure that the distributed manuals are up to date,
249 and may safely ignore it.
254 <title><systemitem>--enable-pdf-manuals[=dblatex]</systemitem></title>
256 This option lets the packager regenerate user's manuals
257 from the DocBook sources as PDF documents.
260 All available translations are generated.
263 As this option is always set when running
264 <command>make distcheck</command>, the packager can be
265 mostly sure that the distributed manuals are up to date,
266 and may safely ignore it.