Difference between revisions of "CompilingUbuntu"

From Inkscape Wiki
Jump to navigation Jump to search
(kill old cruft, refer to the web page!)
(remove all redundant content that is already covered in https://inkscape.org/develop/getting-started/)
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Consider using stable (recommended for production) ==
== Consider using pre-built packages ==
This is a short how to build the latest svn version. Please note that SVN version may be buggy and crash often. This is released for people who want to help testing or need the very latest features. If you are not of developer kind, you are suggested to install the stable version from the repositories using Synaptic or from command line:
This is a short how to build the latest development version. '''If you don't want to change the source code, you can avoid this effort and use pre-built packages''', either the well-tested stable version, or the newest developer's version intended for testing. See [[Installing_Inkscape#Ubuntu_or_Debian_Linux]].
 
<pre>
  sudo apt-get install inkscape
</pre>
 
== Using prebuilt packages (recommended) ==
For Ubuntu there are nightly builds available.  
 
Get your appropriate repository lines from launchpad (read about [https://help.ubuntu.com/community/Repositories/Ubuntu adding repositories]):
 
https://launchpad.net/~inkscape-nightly/+archive/ppa
 
 
Run following command to update the repository information and install inkscape:
<pre>  sudo apt-get update
  sudo apt-get install inkscape-devel
</pre>


== Compiling unstable developement version ==
== Compiling unstable developement version ==
=== Installing dependencies ===
If you are sure you can face Inkscape being unstable, then please continue reading. First you should install all the [[Tracking Dependencies|dependencies]].
* On Ubuntu 16.04 this can be done by:
<pre>
sudo apt-get install build-essential autoconf automake autopoint intltool libtool \
libglib2.0-dev libpng12-dev libgc-dev libfreetype6-dev liblcms2-dev \
libgtkmm-2.4-dev libxslt1-dev libboost-dev libpopt-dev libgsl0-dev libaspell-dev
</pre>
* On Ubuntu 18.04 the above do longer works. Please refer to either
** https://gitlab.com/inkscape/inkscape-ci-docker/blob/master/Dockerfile
** or with the deb-src repo added: <pre>sudo apt-get build-dep inkscape</pre>
Now you should have every dependency you need to build Inkscape.
==== Additional dependencies ====
If you want to have pdf support you need to install poppler:
<pre>
  sudo apt-get install libpoppler-dev libpoppler-glib-dev
</pre>
If you want to have optional features you may need to install some more packages:
<pre>
  sudo apt-get install libgnome-vfsmm-2.6-dev libssl-dev libmagick++9-dev libwpg-dev libcdr-dev libvisio-dev
</pre>
Note: On Ubuntu 18.04 libmagick++9-dev is obsoleted by graphicsmagick-libmagick-dev-compat, and libgnome-vfsmm-2.6-dev no longer exists.
=== Getting source from gitlab ===
<pre>git clone --recursive https://gitlab.com/inkscape/inkscape</pre>
or later on a checkout where submodules may be incomplete
<pre>git submodule update --init --recursive</pre>
=== Configuring and Compiling ===


Please refer to https://inkscape.org/en/develop/getting-started/
Please refer to https://inkscape.org/en/develop/getting-started/


If you have multiple processing cores on your machine, you can run a parallel build using
<pre>
  make -j4
</pre>
The number after "-j" can be set to the number of available processing cores.  This is considerably faster than running "make" on a single core.
=== Testing ===
In addition to the instructions above, developers should always run automated tests before committing any changes.  This is achieved by using the "make check" command.


=== Installing ===
=== Installing ===


If you used some --prefix=/... other than /usr, then you may install using usual 'make install' or 'sudo make install', depending on the location.
If you used some CMAKE_INSTALL_PREFIX other than /usr, then you may install using usual 'make install' or 'sudo make install', depending on the location.
If the the location prefix was /usr, then "sudo make install" is not recommended, as debian package manager would know nothing about new package. The better alternative is using checkinstall. If checkinstall is not installed, you can install it the usual way "sudo apt-get install checkinstall".
If the the location prefix was /usr, then "sudo make install" is not recommended, as debian package manager would know nothing about new package. The better alternative is using checkinstall. If checkinstall is not installed, you can install it the usual way "sudo apt-get install checkinstall".


Line 85: Line 18:
Happy inkscapeing.
Happy inkscapeing.


==== Fix no icons problem ====
If you run this and you find that you have no tool icons it's because it's looking in the wrong place for them. To fix that you need to make a symbolic link to the correct location. Here is an example:
<pre>
  sudo ln -s /usr/share/inkscape /usr/local/share/inkscape
</pre>
=== Update your version ===
If you want to update your already built inkscape to the very latest version, you need to run following commands in inkscape source directory.
<pre>
    bzr up
    make
    make install
</pre>


[[Category:Developer Documentation]]
[[Category:Developer Documentation]]

Latest revision as of 20:06, 16 February 2020

Consider using pre-built packages

This is a short how to build the latest development version. If you don't want to change the source code, you can avoid this effort and use pre-built packages, either the well-tested stable version, or the newest developer's version intended for testing. See Installing_Inkscape#Ubuntu_or_Debian_Linux.

Compiling unstable developement version

Please refer to https://inkscape.org/en/develop/getting-started/


Installing

If you used some CMAKE_INSTALL_PREFIX other than /usr, then you may install using usual 'make install' or 'sudo make install', depending on the location. If the the location prefix was /usr, then "sudo make install" is not recommended, as debian package manager would know nothing about new package. The better alternative is using checkinstall. If checkinstall is not installed, you can install it the usual way "sudo apt-get install checkinstall".

   sudo checkinstall

Happy inkscapeing.