Installing Inkscape

From Inkscape Wiki
Jump to navigation Jump to search

Installing on a Mac

There are two steps needed to install on a Mac.


1. Getting The Right Inkscape Installer:

You need to download the right installation file. Note that this page has a separate version for Panther (10.3.9 only), and Tiger (10.4.x) and above. The Panther version is PPC only, while the Tiger version is Universal Binary, meaning it installs on either older PPC or newer Intel Macs. The Tiger version will also work on Leopard (10.5.x)

Once you have the Inkscape installation package, double click on it and it will open a windows with an Inkscape icon on one side, and a shortcut to the Applications folder on the other side. You need to drag the Inkscape icon across and drop in on the Applications folder. This will copy the file to the Application folder.

To make a shortcut on your Dock, open the Applications folder, and drag the Inkscape icon to the place you want it on the dock.


2. Getting The Right X11 Installer:

To run Inkscape, you will also need to install X11. This is an environment that provides Unix like X-Window support for applications, including Inkscape. A native Mac OSX version that doesn't need X11 will be available sometime in the future (see here for a sneak peek). But for now you need to do one of the following, depending on your OSX version.


For Panther (10.3.x):

You can download a suitable X11 from Apple or mirrored here.


For Tiger (10.4.x):

You can install X11 from your original install DVD (for help see here). Alternately, you can download a version for PPC here, or Intel here. These files are able to be freely re-distributed as X11 is open source.

Note: Once installed, you should also update your X11 to version 1.1.2 here. This requires the earlier version, so you cannot just install the update.


For Leopard (10.5.x):

Leopard officially ships with a community built version of X11 called XQuartz installed by default, however this version has some slight problems. In December 2007, the XQuartz community released the 2.1.1 update here. Apple may release an officially packaged version of this update in the future.

Installing on Unix like systems

Using Precompiled Packages (For Normal Users)

Ubuntu Linux

Probably the easiest way to install on Ubuntu is to use the apt command.

Open a terminal and type;

 sudo apt-get update (enter)
 sudo apt-get install inkscape (enter)


Slackware Linux

I used the precompiled rpm provided by Inkscape for the 0.44 release as my gcc wouldn't compile it. All you need to then do is run rpm2tgz at the command line on the package, eg " rpm2tgz inkscape-0.44-0.i686.rpm" and then install with "installpkg inkscape-0.44-0.i686.tgz". --Pbhj 13:29, 1 July 2006 (PDT)



Compiling Your Own (For The Techies)

NOTE: this isn't finished. I currently have two screwed up systems from fooling with bleeding edge GTK+ stuff, I don't know how that happened. !! :) I'll get to the end over the next few days tho. Setting up a more stable home network atm. -- Tsingi


This was written building an InkScape snapshot on a new RedHat Linux installation. If you find that it doesn't answer your needs exactly, please update this file when you solve your particular problem.


Installing libraries

If you are running a debian based system, and have something like synaptic that lists recent enough versions of the libraries below, use that. If you want the latest libs, which you may need, especially if you are installing a snapshot or building from svn, you will want to download sources. Generally you will get a foo.tar.bz2 or foo.tar.gz or foo.tgz file that you will need to unpack and build.

bz2 files are the smallest. Uncompress them first by typing bunzip2 foo.tar.gz then unpack the remaining tar file by typing tar -xvf foo.tar

foo.tar.gz files and foo.tgz files can be extracted in one operation by typing tar -xvzf foo.tar.gz

Change to the directory that you just created foo. type ./configure then make then, as root, make install

Sometimes that is all you will need to do.

Sometimes you will run into dependancy errors because you need a library you haven't installed yet. If you try installing inkscape without some of these dependancies, you will get a list of what you need. hopefully the instructions below will help you solve these dependancies.


Running ldconfig

after installing libs, (as root) you need to run ldconfig so that the linker can find the libraries that you have just installed. If you aren't logged in as root (i.e. if you became root by typing su) you may not have the /sbin/ directory in your path. so if ldconfig isn't working for you try typing /sbin/ldconfig


pkg-config

pkg-config is a utility that lists dependancies for libraries that sets up flags and paths for compiling. When it's working right it's wonderful. Getting it to work right is a pain in the ass if you don't know how. It's amazing how silent an IRC channel will get when you mention it.

pkg-config references pc files that applications install to give information about them. These are called metadata files, metadata means data about data. For a list of libraries that pkg-config sees, type pkg-config --list-all Having done that and looking at a list of pc files on my system (using find /usr -name "*.pc" > find.pc, then browsing find.pc) I see that I also have a directory called /usr/lib64/pkgconfig/ I might as well get that in there while I'm at it since none of those libs show up in a listing either and that's where most of them are.

Depending on what shell you use, there are different ways of doing this. I'm adding a couple lines to my /etc/profile file:

PKG_CONFIG_PATH=/usr/lib/pkgconfig/:/usr/share/pkgconfig/:/usr/lib64/pkgconfig/:/usr/local/lib/pkgconfig/

export PKG_CONFIG_PATH

Note that I have a new 64 bit system, which is why I'm going through all this. You probably won't have a /usr/lib64/pkgconfig/ unless you do too, so don't just copy what I did. Also note that on a Windows system PATH type environment variables use semi-colons ";" for delimiters as opposed to colons ":"

Using bash, to immediately source the file in the shell you are using, type . /etc/profile'. This won't test to see if the path gets put into your environment when open a shell though, so maybe a better thing to do is close your terminals and open new ones to see that it is actually set automagically.

Ahh, I can now configure glibmm. The hair on the back of my neck is laying flat again, I think I'll have a coffee.  :)


libgc

download and install the latest version of libgc[[1]]

libgc installs in /usr/local/lib by default. If you have installed it and it is still not linking, you may not have that in your library path. There is a LD_LIBRARY_PATH environment variable, or alternatively you can make sure that /usr/local/lib is listed in the file /etc/ls.so.conf


libsig++

download and install libsig++ [2]

this should be fairly straightforward.


glibmm

This is where, if you haven't wrestled with pkg-config on your system you start scratching your head. Because when you run configure on glibmm you may an error like this

checking for GLIBMM... configure: error: Package requirements (sigc++-2.0 >= 2.0.0 glib-2.0 >= 2.8.0 gobject-2.0 >= 2.8.0 gmodule-2.0 >= 2.8.0) were not met. Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix.

Alternatively you may set the GLIBMM_CFLAGS and GLIBMM_LIBS environment variables to avoid the need to call pkg-config. See the pkg-config man page for more details.

It seems that most packages install in a non standard prefix, in direct defiance of everything we have been led to believe regarding the concept of standard, so you may have to deal with this. See the note on pkg-config above.


gtkmm [3]


(Ben) Tsingi, you are writing in the 'User Documentation' section. Most of this material is only appropriate for Developers and some would be better on the Mailing List. You will probably find that when you have finished, this page will be edited and pruned back. FWIW, I was expecting to find information about 'apt-get' (Debian) 'emerge' (Gentoo) and AutoPackage (the others).