2

Please someone explain to me this, because it makes no sense:

$ dpkg -i freeling-3.1-quantal-x86_64.deb
Selecting previously unselected package freeling.
(Reading database ... 283003 files and directories currently installed.)
Preparing to unpack freeling-3.1-quantal-x86_64.deb ...
Unpacking freeling (3.1) ...
dpkg: dependency problems prevent configuration of freeling:
 freeling depends on libboost-program-options1.49.0 (>= 1.49); however:
  Package libboost-program-options1.49.0 is not installed.
 freeling depends on libboost-regex1.49.0 (>= 1.49); however:
  Package libboost-regex1.49.0 is not installed.
 freeling depends on libboost-system1.49.0 (>= 1.49); however:
  Package libboost-system1.49.0 is not installed.
 freeling depends on libicu48 (>= 4.8.1); however:
  Package libicu48:amd64 is not installed.

But I have liboost 1.54 !!! (ALL packages)

$ apt-cache policy libboost-program-options1.54.0
libboost-program-options1.54.0:
  Installed: 1.54.0-5
  Candidate: 1.54.0-5

$ apt-cache policy libboost-program-options-dev
libboost-program-options-dev:
  Installed: 1.54.0.1
  Candidate: 1.54.0.1

And so on for all of the dependencies. Is this package broken, or am I looking at a problem with my settings? As far as I understand,

(>= 1.49)

means greater or equal to 1.49, right?

2 Answers 2

2

You need the package called libboost-program-options1.49.0. It can be any version greater or equal to 1.49, but it needs to be that package name. libboost-program-options1.54.0 is a different package name.

There are different package names because they have incompatible ABIs, so an executable compiled for 1.49.0 won't work with 1.54.0 or vice versa. Since the package names are different, you can have both installed, which allows you to use programs compiled for 1.49.0 and programs compiled for 1.54.0 on the same system.

The package name …-quantal-… indicates that this is a package intended for Ubuntu 10.10 quantal. On a more recent Ubuntu release such as saucy or trusty, you should grab the source package and recompile it, or find a binary intended for your Ubuntu version. Alternatively, you can try grabbing the old 1.49.0 libraries which are still available in raring (also, old Ubuntu releases are archived on old-releases.ubuntu.com), but this might bring you into some dependency hell, so I recommend recompiling Freeling.

2

According to this thread titled: Re:Installing Freeling 3.1 on Ubuntu 13.10 - 2014/01/08 16:30 it looks like you'll need to recompile it.

excerpt

The file freeling-3.1-quantal-x86_64.deb will work with ubuntu Quantal (12.10) and Raring (13.04), because those releases shipped both libboost-1.49 and libboost-1.53

Saucy ships libboost-1.53 and 1.54, so, you'll have to compile FreeLing from source.

Source packages for 3.1 will fail to compile, but trunk version in SVN will successfully compile with boost 1.54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .