<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.inkscape.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Markoa</id>
	<title>Inkscape Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.inkscape.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Markoa"/>
	<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/Special:Contributions/Markoa"/>
	<updated>2026-04-29T01:03:30Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=Compiling_Inkscape&amp;diff=12372</id>
		<title>Compiling Inkscape</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=Compiling_Inkscape&amp;diff=12372"/>
		<updated>2007-01-04T23:58:28Z</updated>

		<summary type="html">&lt;p&gt;Markoa: /* Boehm-GC */ Mention gc-devel as a possible name (appears in FC)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hopefully, Inkscape will compile right out of the box.  If it doesn't, well that's what this page is for.&lt;br /&gt;
&lt;br /&gt;
Jot down notes, questions, findings, tips, etc. here on things you run into.  It's a good idea to&lt;br /&gt;
make mention of what version of the code you're trying to compile, the distribution you're running,&lt;br /&gt;
and other such information that might be pertinent.&lt;br /&gt;
&lt;br /&gt;
If legitimate bugs are found or patches developed, please move them to the tracker at Sourceforge&lt;br /&gt;
rather than inlining them here.  &lt;br /&gt;
&lt;br /&gt;
= Notes =&lt;br /&gt;
Inkscape needs automake1.7 or automake1.8 to compile NOT automake1.9 it has a bug ( link: http://sourceforge.net/mailarchive/message.php?msg_id=10288631 ) that prevents compiling of Inkscape. If you have already tried to do a $ make with automake1.9 then $ ./autogen.sh from your inkscape-cvs dir and proceed as normal.&lt;br /&gt;
(On the other hand, I've repeatedly built it with automake-1.9.4.  ralf)&lt;br /&gt;
&lt;br /&gt;
You may want to also [http://inkscape.org/cgi-bin/wiki.pl?OtherProjects#plugins add plugins] durring or after compiling.&lt;br /&gt;
&lt;br /&gt;
= OS &amp;amp;amp; Distribution Specific =&lt;br /&gt;
* '''Linux'''&lt;br /&gt;
** [[CompilingAutopackage|Autopackage]] (multi-distro)&lt;br /&gt;
** [[CompilingFedora|Fedora]]&lt;br /&gt;
** [[CompilingGentoo|Gentoo]]&lt;br /&gt;
** [[CompilingDebian|Debian]]&lt;br /&gt;
** [[CompilingUbuntu|Ubuntu]]&lt;br /&gt;
** [[CompilingYellowDog|Yellow Dog]]&lt;br /&gt;
** [[CompilingSuse|Suse]]&lt;br /&gt;
** [[CompilingSlackware|Slackware]]&lt;br /&gt;
** [[CompilingYoper|Yoper]]&lt;br /&gt;
** [[CompilingMandrake|Mandrakelinux]]&lt;br /&gt;
* [[CompilingMacOsX|Mac OS X]]&lt;br /&gt;
* [[Win32Port|Windows]]&lt;br /&gt;
* [[CompilingSPARC|SPARC]]&lt;br /&gt;
* [[CompilingSunSolaris|Sun Solaris]]&lt;br /&gt;
* [[CompilingStatic|Static Compiles]]&lt;br /&gt;
&lt;br /&gt;
= Package Config (pkg-config) =&lt;br /&gt;
&lt;br /&gt;
If you must compile and install any of these from source, you may find an error like this when trying to&lt;br /&gt;
compile them or Inkscape itself:&lt;br /&gt;
&lt;br /&gt;
 checking for gtk+-2.0 &amp;gt;= 2.0.0  libxml-2.0 &amp;gt;= 2-2.4.24  sigc++-1.2  gtkmm-2.0... Package gtkmm-2.0 was not found in the  pkg-config search path.&lt;br /&gt;
 Perhaps you should add the directory containing `gtkmm-2.0.pc'&lt;br /&gt;
 to the PKG_CONFIG_PATH environment variable&lt;br /&gt;
 No package 'gtkmm-2.0' found&lt;br /&gt;
&lt;br /&gt;
A solution is to set the PKG_CONFIG_PATH variable as so:&lt;br /&gt;
&lt;br /&gt;
for bash:&lt;br /&gt;
     export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig&lt;br /&gt;
for csh:&lt;br /&gt;
     setenv PKG_CONFIG_PATH /usr/local/lib/pkgconfig:/usr/lib/pkgconfig&lt;br /&gt;
&lt;br /&gt;
A good place to put this line is in your .bashrc or .cshrc file&lt;br /&gt;
&lt;br /&gt;
= Getting and Installing Source packages =&lt;br /&gt;
&lt;br /&gt;
If your distro does not have some packages available (like many don't, ie, Fedora Core 2), you must often download&lt;br /&gt;
source packages and build and install them yourself.  Actually this is not that hard, and is similar to&lt;br /&gt;
doing a Gentoo 'emerge.'&lt;br /&gt;
&lt;br /&gt;
* Usually you download a file with a name like somepackage-1.0.tar.gz.  Unpack it with&lt;br /&gt;
&lt;br /&gt;
    $ tar zxf somepackage-1.0.tar.gz&lt;br /&gt;
    or&lt;br /&gt;
    $ tar jxf somepackage-1.0.tar.bz2&lt;br /&gt;
&lt;br /&gt;
* Then 'cd' into the new directory.&lt;br /&gt;
&lt;br /&gt;
* Configure it with the command:&lt;br /&gt;
&lt;br /&gt;
    $ ./configure&lt;br /&gt;
&lt;br /&gt;
* Build it with:&lt;br /&gt;
&lt;br /&gt;
    $ make&lt;br /&gt;
&lt;br /&gt;
* As the 'root' user,  install it with:&lt;br /&gt;
&lt;br /&gt;
    # make install&lt;br /&gt;
&lt;br /&gt;
== Boehm-GC ==&lt;br /&gt;
&lt;br /&gt;
Source: http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source&lt;br /&gt;
&lt;br /&gt;
*  Download this file:&lt;br /&gt;
**   http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc6.7.tar.gz&lt;br /&gt;
*  Unpack it&lt;br /&gt;
**   tar zxf gc6.6.tar.gz&lt;br /&gt;
*  Configure and build it&lt;br /&gt;
**   cd gc6.6&lt;br /&gt;
**   ./configure --disable-shared --enable-static&lt;br /&gt;
**   make&lt;br /&gt;
*  Install it&lt;br /&gt;
**   su    (or however else you become root)&lt;br /&gt;
**   make install&lt;br /&gt;
&lt;br /&gt;
Binaries:  If searching for a package for GC, the name of it is sometimes:&lt;br /&gt;
&lt;br /&gt;
* gc&lt;br /&gt;
* libgc&lt;br /&gt;
* gc-devel&lt;br /&gt;
* libgc-devel&lt;br /&gt;
* boehm-gc  (on Gentoo)&lt;br /&gt;
* debian/ubuntu:  sudo apt-get install libgc-dev&lt;br /&gt;
&lt;br /&gt;
== libSigc++ ==&lt;br /&gt;
&lt;br /&gt;
Source: http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.0/&lt;br /&gt;
&lt;br /&gt;
With this file, and for [[GlibMM]] and [[GtkMM]] below, it is usually desirable for us developers to&lt;br /&gt;
build this C++ library statically.  This removes a dependency that might be difficult for an&lt;br /&gt;
end-user during installation.  Configure it with:&lt;br /&gt;
&lt;br /&gt;
    ./configure --enable-static --disable-shared&lt;br /&gt;
&lt;br /&gt;
== [[GlibMM]] ==&lt;br /&gt;
&lt;br /&gt;
Source: http://ftp.gnome.org/pub/GNOME/sources/glibmm/2.8/&lt;br /&gt;
&lt;br /&gt;
== [[GtkMM]] ==&lt;br /&gt;
&lt;br /&gt;
Source: http://ftp.gnome.org/pub/GNOME/sources/gtkmm/2.8/&lt;br /&gt;
&lt;br /&gt;
= Developer Compilation =&lt;br /&gt;
&lt;br /&gt;
Plain vanilla compilation is done as documented in INSTALL; ./autogen.sh (optionally); ./configure; make; su &amp;amp;&amp;amp; make test; make install (optional).  See INSTALL for more on that.&lt;br /&gt;
&lt;br /&gt;
But if you're going to be doing a lot of development, there's some tricks and techniques you should know,&lt;br /&gt;
to get best results.&lt;br /&gt;
&lt;br /&gt;
#  Turn off optimization&lt;br /&gt;
#  Use ccache for faster compilation&lt;br /&gt;
#  Set up a separate build directory (nice for testing both gcc and g++, or cross compiling)&lt;br /&gt;
#  Use the -j N flag to optimize for the number of processors in your machine, with N = 1 + no. proc's&lt;br /&gt;
&lt;br /&gt;
Example:  Setting up both gcc and g++ build environments (in separate tree), and using ccache for faster&lt;br /&gt;
compilations on a dual-processor machine, with no optimization, assuming /bin/bash:&lt;br /&gt;
&lt;br /&gt;
 mkdir build-gcc build-g++&lt;br /&gt;
 cvs checkout inkscape&lt;br /&gt;
 cd inkscape&lt;br /&gt;
 libtoolize --copy --force&lt;br /&gt;
 ./autogen.sh&lt;br /&gt;
 cd ../build-gcc&lt;br /&gt;
 CFLAGS='-g -O0 -Wall' CC='ccache gcc' ../inkscape/configure&lt;br /&gt;
 cd ../build-g++&lt;br /&gt;
 CXXFLAGS='-g -O0 -Wall' CXX='ccache g++' ../inkscape/configure&lt;br /&gt;
 cd ../build-gcc &amp;amp;&amp;amp; make -j 3&lt;br /&gt;
 cd ../build-g++ &amp;amp;&amp;amp; make -j 3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Turning off just optimization (which can produce strange results in debuggers):&lt;br /&gt;
&lt;br /&gt;
 export CXXFLAGS='-g -O0 -Wall'&lt;br /&gt;
 export CFLAGS='-g -O0 -Wall'&lt;br /&gt;
 ./configure&lt;br /&gt;
&lt;br /&gt;
[[Category:Developer Documentation]]&lt;/div&gt;</summary>
		<author><name>Markoa</name></author>
	</entry>
</feed>