[Interest] -headerdir causing headerfile version confusion building qtwebengine (was Qt5 cannot be build on Debian Wheezy? GLIBCXX_3.4.20' not found)
René J.V. Bertin
rjvbertin at gmail.com
Tue Jan 20 00:08:10 CET 2015
On Monday January 19 2015 14:30:28 Thiago Macieira wrote:
> to -headerdir. (yes, it is in the qtwebengine case, but I'm talking in
> generic)
So, is the qtwebengine case a bug or something that would be fixed when I submit a patch?
> What might happen is that qtsvg has -I/opt/ports/include so it can find zlib.h
> there, but this -I interferes with the QtCore headers. Worse, this can happen
> for QtCore itself, so QtCore's own build finds its old and stale headers.
Well, of course there are all kinds of ways to bring a build system to its knees. It was never my intention to suggest Qt's build system should be more fool proof than others.
> I don't have to. This is standard practice already. All the major Linux
> distros build their packages like I described. Look at Fedora's Koji or the
> Open Build System or what Debian uses. Take a look at Scratchbox too.
I can only speak for Debian and Ubuntu and for those that is true for the packages that they ship, and for PPAs people can create.
But do you really think that Debian or Ubuntu maintainers develop their packages starting with a clean install every time (creating a new VM each time as launchpad does)?
Every Ubuntu package that I've tried to build locally builds just fine. And I don't have the impression that dpkg-build sets up some sort of chroot.
> weird errors, elsewhere. A bad config.h might result in disabled features on an
> otherwise fully-working application, so you'd spend a lot of time debugging to
> find out that it was caused by a left-over build of an unrelated package that
> the user built herself...
Common MacPorts debugging (or debunking :)) practice is to ask the user for the build log first. Then again chances that a lambda MacPorts user runs into this kind of problem are small, for various reasons among which the fact that the port build system sets up a kind of sandboxed environment.
More information about the Interest
mailing list