valhalla/packaging

Can't install Valhalla on Linux Mint 17.3 with UbuntuGIS unstable

Closed this issue · 3 comments

Hi folks,

Following the instructions, i tried to install Valhalla on my Linux Mint 17.3 Cinnamon 64-bit machine but errored out with the following messages.

The problem seems to be a spatial library conflict.
For your information, i'm using the UbuntuGIS unstable PPA for Trusty (deb http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu trusty main).

~> grep -cF trusty /etc/lsb-release0
0

# Add the PPAs and update
~> sudo add-apt-repository -y ppa:kevinkreiser/prime-server
~> sudo add-apt-repository -y ppa:valhalla-routing/valhalla
~> sudo apt-get update
# All good; output omitted

~> sudo apt-get install -y valhalla-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
valhalla-bin : Depends: libvalhalla0 (= 2.1.9-0ubuntu1~trusty1) but it
is not going to be installed
Depends: libprime-server0.6.3-0 but it is not going to
be installed
Depends: prime-server0.6.3-bin but it is not going to be
installed
E: Unable to correct problems, you have held broken packages.
araichev@wujarch~> sudo aptitude install -y valhalla-bin
The following NEW packages will be installed:
jq{a} libgeos-3.4.2{a} libgeos-c1{a} libprime-server0.6.3-0{ab}
libreadosm1{a} libvalhalla0{a} prime-server0.6.3-bin{a} spatialite-bin{a}
valhalla-bin
0 packages upgraded, 9 newly installed, 0 to remove and 23 not upgraded.
Need to get 2,876 kB/3,329 kB of archives. After unpacking 19.8 MB will
be used.
The following packages have unmet dependencies:
libprime-server0.6.3-0 : Depends: libczmq3 (>= 3.0.2) which is a
virtual package.
Depends: libzmq5 (>= 4.0.1+dfsg) which is a
virtual package.
libgeos-c1v5 : Breaks: libgeos-c1 (< 3.4.2-8~) but 3.4.2-4ubuntu1 is to
be installed.
The following actions will resolve these dependencies:

Keep the following packages at their current version:
1) libgeos-c1 [Not Installed]
2) libprime-server0.6.3-0 [Not Installed]
3) libvalhalla0 [Not Installed]
4) prime-server0.6.3-bin [Not Installed]
5) valhalla-bin [Not Installed]

No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 23 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

disclaimer i dont know anything about linux mint. if its similar to trusty then it should work though..

first question, what is the output of:

sudo add-apt-repository -y ppa:kevinkreiser/libsodium
sudo add-apt-repository -y ppa:kevinkreiser/libpgm
sudo add-apt-repository -y ppa:kevinkreiser/zeromq3
sudo add-apt-repository -y ppa:kevinkreiser/czmq

these additional repos are needed because of backports of newer versions of zmq libraries not available on trusty.

second, it looks like ubuntuGIS unstable might depend on libgeos-c1v5. indeed on trusty we target libgeos-c1 because that is the latest stable version on trusty. it seems the libgeos maintainers have marked the newer version libgeos-c1v5 (which we target in xenial) as breaking the older stable version. because of this im not sure how we can actually use the ppa directly since the ubuntu gis unstable builds dependencies conflict with valhallas dependencies.

do you have any desire to upgrade to a newer version of linux mint that is equivalent to xenial? otherwise the only option for you is to compile valhalla from source. let me know how you want to proceed

Adding those PPAs goes smoothly, then trying to install valhalla-bin yields the following errors, which are similar to last time.

sudo apt-get install -y valhalla-bin
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 valhalla-bin : Depends: libvalhalla0 (= 2.1.9-0ubuntu1~trusty1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
araichev@wujarch~> sudo aptitude install -y valhalla-bin
The following NEW packages will be installed:
  jq{a} libczmq3{a} libgeos-3.4.2{a} libgeos-c1{a} 
  libprime-server0.6.3-0{a} libreadosm1{a} libsodium18{a} libvalhalla0{a} 
  libzmq5{a} prime-server0.6.3-bin{a} spatialite-bin{a} valhalla-bin 
0 packages upgraded, 12 newly installed, 0 to remove and 45 not upgraded.
Need to get 3,335 kB/3,789 kB of archives. After unpacking 21.4 MB will be used.
The following packages have unmet dependencies:
 libgeos-c1v5 : Breaks: libgeos-c1 (< 3.4.2-8~) but 3.4.2-4ubuntu1 is to be installed.
The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     libgeos-c1 [Not Installed]                         
2)     libvalhalla0 [Not Installed]                       
3)     valhalla-bin [Not Installed]                       



No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 45 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

So looks like the problem is libgeos-c1 vs libgeos-c1v5.
I'll update to Linux Mint 18 (based on Ubuntu 16) this week, which i've been meaning to do anyway, then try again.
Thanks for your help.

Whoops, forgot to update this thread.
Installation works on Linux Mint 18 by following the Mapzen directions.
All good.