Package from "apt-get source" not building correctly

Asked by Ruben Undheim

I'm trying to build osm-gps-map from source by running: apt-get source osm-gps-map ; cd osm-gps-* ; dpkg-buildpackage

This fails even though I have all dependencies. It also fails when I upload it to a PPA. In addition, when I look at this page:

https://launchpad.net/ubuntu/+source/osm-gps-map/0.7.3-3

It's written that it has failed for both utopic, trusty and saucy.

Does this mean that when it was integrated into saucy, it was actually not rebuilt, or am I misunderstanding something? I thought that all packages were rebuilt for each Ubuntu release.

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu Edit question
Assignee:
No assignee Edit question
Solved by:
Ruben Undheim
Solved:
Last query:
Last reply:
Revision history for this message
Hamish McIntyre-Bhatty (hamishmb) said :
#1

They are rebuilt, always. There's something odd here. Could you show me the specific error you're getting, and the last 10 lines before it? Do you have build-essential installed?

Thanks,
Hamish

Revision history for this message
Ruben Undheim (saltmakrell) said :
#2

You can see the error I'm getting here:

https://launchpadlibrarian.net/176046785/buildlog_ubuntu-trusty-i386.osm-gps-map_0.7.3-3ubuntu1_FAILEDTOBUILD.txt.gz

The package is building both a C-library, then a python module, and the python module depends on the C-library by using pkg-config. It seems like it managed to sort of things correctly for quantal, but not in later releases. At least now it's not finding the osmgpsmap.pc file which it used to do before.

Ruben

Revision history for this message
Manfred Hampl (m-hampl) said :
#3

In the log file I see several occurrences of

fatal error: pygobject.h: No such file or directory
#include <pygobject.h>

According to http://packages.ubuntu.com/search?searchon=contents&keywords=pygobject.h&mode=&suite=trusty&arch=any that file is included in python-gi-dev and python-gobject-2-dev

As far as I can see, the build process installs both these packages, so that is strange. Maybe there is something wrong with the settings of the include directories in Makefile.

Also the messages in your log file
config.status: creating osmgpsmap.pc
...
Package osmgpsmap was not found in the pkg-config search path.
Perhaps you should add the directory containing `osmgpsmap.pc'
to the PKG_CONFIG_PATH environment variable
No package 'osmgpsmap' found
...
indicates that there is something wrong with certain search paths.

By the way, there is already a bug report created https://bugs.launchpad.net/ubuntu/+source/osm-gps-map/+bug/1312890 that the package cannot be built from source (although with error messages different from those in your build log).

Revision history for this message
Ruben Undheim (saltmakrell) said :
#4

The real mystery is how can it be that osm-gps-map apparently built correctly when trusty was first released, but not anymore. I'm installing a fresh trusty into virtualbox now in order to see if I can get it to build correctly there.

I believe there must be one or several packages (build tools?) which have been updated and changed the behaviour since then.

Revision history for this message
Manfred Hampl (m-hampl) said :
#5

Your interpretation of https://launchpad.net/ubuntu/+source/osm-gps-map/0.7.3-3 that the build attempt has failed for utopic, trusty and saucy is not fully correct. It seems to me that there was not even a build attempt for i386 and amd64 for those releases, just the attempts for building versions for arm64 and ppc64el architecture have failed.

For i386 and amd64 the binaries that have been successfully built for quantal apparently have just been carried over to the newer releases.

I assume this case should be dealt with in a FTBFS (failed to build from scratch) bug report.

Revision history for this message
Ruben Undheim (saltmakrell) said :
#6

Ok, then we're back to my original question: "Does this mean that when it was integrated into saucy, it was actually not rebuilt, or am I misunderstanding something?"

Seems like Hamish's and your comments then are quite contradicting. Can it really happen that packages are directly integrated into a new Ubuntu release without being recompiled? Is there any place I can see how the packages have been integrated into a release?

Thanks for taking the time to answer.

Revision history for this message
Manfred Hampl (m-hampl) said :
#7

If you look at https://launchpad.net/ubuntu/trusty/i386/libosmgpsmap2/0.7.3-3 you see the package in trusty was built on quantal. So there apparently was no new build for any Ubuntu release since quantal.

I tried to look for the rules with respect to rebuilding from source in https://wiki.ubuntu.com/UbuntuDevelopment/ReleaseProcess but I was not able to find a clear statement. Maybe somebody else is able to provide that information. http://packaging.ubuntu.com/html/fixing-ftbfs.html does not help either.

Revision history for this message
Ruben Undheim (saltmakrell) said :
#8

I've asked on IRC (freenode/#ubuntu-packaging) and there I was told that binaries might the carried over directly from one release to another without being recompiled if there haven't been any changes to the source package.

Seems like the patch for bug #1320359 then needs more work before it will be possible to rebuild.

Revision history for this message
Hamish McIntyre-Bhatty (hamishmb) said :
#9

Yeah, I'm wrong then, I should have said packages should be rebuilt in most cases. Still, odd problem..

Hamish