recent port upgrades causing missing libraries

Jeremy Messenger mezz.freebsd at
Tue Dec 11 19:48:56 UTC 2012

On Tue, Dec 11, 2012 at 11:58 AM, Kimmo Paasiala <kpaasial at> wrote:
> On Tue, Dec 11, 2012 at 6:57 PM, Jeremy Messenger
> <mezz.freebsd at> wrote:
>> On Tue, Dec 11, 2012 at 10:25 AM, Bryan Drewery <bryan-lists at> wrote:
>>> On 12/11/2012 10:21 AM, Jeremy Messenger wrote:
>>>> On Tue, Dec 11, 2012 at 9:45 AM, Bryan Drewery <bryan-lists at> wrote:
>>>>> On 12/11/2012 9:03 AM, Adam McDougall wrote:
>>>>>> I used poudriere to build pkgng packages from the latest round
>>>>>> of port updates since the freeze.  I know in the commit message
>>>>>> for xcb-util it bumped some other ports, but it seems like not
>>>>>> enough to make poudriere reinstall enough packages to make things
>>>>>> work.
>>>>> Poudriere does the right thing here, it recompiles all affected ports.
>>>>> The pcre upgrade also caused some problems.  I'm sorry that
>>>>>> I don't have time to make an extensive report of ports vs. libraries
>>>>>> or a PR but I can add some brief details.  Using pkg install -fR
>>>>>> on xcb-util and pcre cured the issues for now, but that doesn't mean
>>>>>> I've caught them all.  pkg_libchk doesn't work with pkgng.  I could
>>>>>> have told pkg to reinstall all packages but that is a big hammer.
>>>>> The problem then comes here, pkgng doesn't automatically know that ports
>>>>> have been rebuilt (without PORTREVISION bumps) or that their checksums
>>>>> do not match, unless you use pkg install -fR on the proper packages.
>>>>> I've written a script that does the same as `portmaster -w`, which will
>>>>> preserve old libraries when running `pkg upgrade`, which will at least
>>>>> prevent a broken system while you use pkg_libchk to force reinstall
>>>>> affected packages:
>>>> I don't think the 'portmaster -w' will help with his issue. His issue
>>>> is pretty mess up, because his binaries below have been compiled with
>>>> old and new library at the same time. For some reason, it doesn't
>>>> uninstall (or move when use 'portmaster -w') old libraries first
>>>> before build with new libraries.
>>> There's no portmaster involved here. I only mention it as an example.
>>> This is purely pkgng using binary packages.
>> He built his own package by using poudriere. The question is that why
>> did it allows linked with old and new libraries at the same time? It
>> should be uninstall old libraries first before compile/link with new
>> libraries.
> Poudriere is not the problem here because it builds everything
> everytime in a clean jail. The problem is the way pkg-install(8)
> detects if a package needs to re-installed, if there's no portrevision
> bump it won't re-install the package even if the package has been
> linked against new shared libraries.

Okay, don't really know much about poudriere so let's drop on this.

If the PORTREVISION wasn't bump then how did his moused got rebuilt?
If you look at the mousepad (orignal email's log that you have snipped
out) and you will see that it got linked with old and new two
libraries at the same time because the tool didn't uninstall old
library first before rebuild other ports. That kind of bug needs to be
figured out if it's tool fault.

> -Kimmo

mezz.freebsd at - mezz at
FreeBSD GNOME Team - gnome at

More information about the freebsd-ports mailing list