Difference between revisions of "CompilingUbuntu"

From Inkscape Wiki
Jump to navigation Jump to search
(→‎Installing dependencies: liblcms1-dev > liblcms2-dev (version 1 is not part of repositories anymore in recent Ubuntu versions))
Line 25: Line 25:
<pre>
<pre>
sudo apt-get install build-essential autoconf automake autopoint intltool libtool \
sudo apt-get install build-essential autoconf automake autopoint intltool libtool \
libglib2.0-dev libpng12-dev libgc-dev libfreetype6-dev liblcms1-dev \
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
libgtkmm-2.4-dev libxslt1-dev libboost-dev libpopt-dev libgsl0-dev libaspell-dev
</pre>
</pre>

Revision as of 00:03, 27 November 2015

Consider using stable (recommended for production)

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:

   sudo apt-get install inkscape

Using prebuilt packages (recommended)

For Ubuntu there are nightly builds available.

Get your appropriate repository lines from launchpad (read about adding repositories):

https://launchpad.net/~inkscape-nightly/+archive/ppa


Run following command to update the repository information and install inkscape:

   sudo apt-get update
   sudo apt-get install inkscape-devel

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 dependencies. This can be done by:

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

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:

   sudo apt-get install libpoppler-dev libpoppler-glib-dev

If you want to have optional features you may need to install some more packages:

   sudo apt-get install libgnome-vfsmm-2.6-dev libssl-dev libmagick++9-dev libwpg-dev libcdr-dev libvisio-dev

Getting source from Bazaar

Inkscape now uses Bazaar, please refer to the Working with Bazaar page for details on how to get the Inkscape source code.

Configuring and Compiling

Enter the newly created inkscape directory.

  cd inkscape

As you may have already noticed this folder contains some files with all CAPITAL letters like README, INSTALL, HACKING, COPYING and probably others. These contain the latest information about how to build the program. The README file says that if you have no configure script in the current directory you should run autogen script to create it:

   NOCONFIGURE=1 && ./autogen.sh

Now run configure script which detects your system variables, installed software etc.:

   ./configure

or, if you want to make it install to an alternate location so that you can keep the standard version installed and untouched

  ./configure --prefix=/home/yourname/opt/local

(replacing "yourname" with your actual directory user name, of course) All bug reporting testers may find it useful to install to use --prefix=/home/yourname/opt/inkscape-revision-19900 or --prefix=/opt/inkscape-19900 or something similar, replacing the revision number with correct one (this is shown when svn fetching finishes, also can be found in file .svn/entries). This way you can have several versions of inkscape installed at once.

If the configure script ends with no error messages, you are the lucky one, all system requirements are met. Run make to compile.

   make

This may take some time, probably hours, depending on your machine's speed. On 1,4GHz P3M with 512Mb clean build took 100 minutes.

If you have multiple processing cores on your machine, you can run a parallel build using

  make -j4

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

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 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.

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:

   sudo ln -s /usr/share/inkscape /usr/local/share/inkscape

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.

    bzr up
    make
    make install