[OSGeo-Discuss] Library incompatibilities

Mateusz Loskot mateusz at loskot.net
Sun Apr 26 08:33:34 EDT 2009


Ned Horning wrote:
> I have some questions about library version incompatibilities when 
> using Linux OSGeo desktop applications. I am trying to force myself 
> to use a broader array of open source geo packages for my daily tasks
>  but the more packages I use the more headaches I have trying to 
> manage conflicting libraries.

Welcome to the world of software :-)

> For example, GDAL is used by just about all geo projects (for good 
> reason) but different projects use different versions of GDAL or the 
> same version compiled differently and distributed on different 
> repositories. I spend a good bit of time tracking down these 
> conflicts with help from colleagues and I'm  wondering if other folks
>  have similar problems and if you are how do you deal with it. I'm 
> still not all that capable using Linux and I suppose that's one of 
> the problems but it just seems like it shouldn't be this difficult 
> especially when my other FOSS applications seem to get along with 
> each other just fine.

Given all that, I'd suggest you to rely on one of popular Linux
distributions and use geospatial software provided from its
repositories. Distributions "guarantee" there are no conflicts between
official packages.

One of disadvantages is that you can not freely choose what version to
use of GDAL, GRASS, QGIS, etc. but you rely on versions provided by
distribution. This can be solved by using often released distributions
like Ubuntu (released every 6 months) or use development mainstream of
distribution, for instance I use Ubuntu Jaunty (now) or Debian unstable.

Another option is to agree on climbing learning curve of building and
installing software from sources. This gives you 100% of flexibility
but it needs a lot of time at the beginning, + reasonable fast
computer to (re)build stuff often.

I personally prefer to use with development mainstream and build &
install software from development branches (i.e. SVN trunk) directly.

If you'd like to go the hard way but you are unsure, I'd suggest to
combine the two approaches explained above:

1. Install your favourite distribution and keep it stable and always
working using distribution packages.

2. Get one of virtualization engine (i.e. VirtualBox) and install one of
your favourite Linux distribution as guest system, but don't install any
 geospatial packages. Instead, play with installing all geospatial
software you want to use from sources on this guest system under VM.

This will give you decent level of safety - your host operating system
will remain stable and usable, but you can still experiment on guest OS
under VM.

> It would be nice to be able to pick and choose appropriate software 
> for a specific task (I always considered that to be a strength of 
> FOSS) but in practice I'm having a hard time doing that.

It works in theory, but in practice it's not-that-easy.
IMHO, you've misunderstood it a little.
You can pick and run anything what's provided by your favourite Linux
distribution, but there is no guarantee you can pick anything from
anywhere and it will run.
Every time you build and install software from source, you *must* learn
about requirements of all packages you're about to install and
check if all they and their versions are compatible.
For instance, if PostGIS 1.4 is compatible (or not) with GEOS 2.2, etc.

Building software from source on Linux, is almost like building your own
Linux distributions. Nobody says it's easy.

> Here is a list of what I'd like to be loaded on my Ubuntu system and
> this will certainly grow as I get more familiar with other packages:
> OSSIM, GRASS, QGIS, FWTools, and R.

What Ubuntu version do you use?
Why don't you grab these from Ubuntu packages?

FYI, FWTools is no longer being maintained.

Best regards,
-- 
Mateusz Loskot, http://mateusz.loskot.net
Charter Member of OSGeo, http://osgeo.org


More information about the Discuss mailing list