Ubuntu – How to find the dependencies when building software from source


Here is what I have done.
I downloaded foxtrotgps.1.1.1.tar.gz as it is the latest to /home/crash/usr/local.src
I extracted it to my /home/crash/usr/local/src as directory /foxtrotgps.1.1.1

I then checked all the required packages for the correct level, and they were or if missing, I added them.

So I then go to the FTGPS directory and do ./configure, and it gets to where it says;

No package 'gtk+-2.0' found
No package 'gdk-2.0' found
No package 'gthread-2.0' found

But the gtk+-2.0 is there, but I don't find gdk or gthread. And it stops and goes nowhere. What am I doing wrong – what package dependencies am I missing?

Best Answer

the proviso

I'm assuming that you are using a recent version of ubuntu such as 12.04. The versions in the repository are considered stable - so perhaps you may wish to use that version.

However if you like living on the cutting-edge - compiling or installing from a PPA is the way-to go. Just remember, this route can leave your system in a potential unstable state.

how to compile

The dependencies you need to install this are as follows:

sudo apt-get install autotools-dev intltool libbluetooth-dev libcurl4-gnutls-dev libexif-dev libgconf2-dev libglade2-dev libgps-dev libgtk2.0-dev  libsoup2.4-dev  libsqlite3-dev libxml2-dev

Remember also to install the package build-essential i.e.

sudo apt-get install build-essential

so how did I know that

... well I sort of cheated.

Search on packages.ubuntu.com for your package - I looked for foxtrotgps in the Quantal repository.

enter image description here

Look at the resources and look for the debian.tar.xz file. Click on it - it will open in the archive manager. Navigate to the control file in the debian folder.

enter image description here

In the build-depends section are the packages Launchpad needs to build the source - its the same packages you need to install.