Difference between revisions of "Installing Inkscape"

From Inkscape Wiki
Jump to navigation Jump to search
(Added a little suggestion)
Line 72: Line 72:
----
----
''gtkmm'' [http://www.gtkmm.org/]
''gtkmm'' [http://www.gtkmm.org/]
----
(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).

Revision as of 20:02, 7 May 2006

Install Help

or Things to do before you install InkScape

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