NetBSD Problem Report #47582

From www@NetBSD.org  Fri Feb 22 07:12:40 2013
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	by www.NetBSD.org (Postfix) with ESMTP id 290EC63E500
	for <gnats-bugs@gnats.NetBSD.org>; Fri, 22 Feb 2013 07:12:40 +0000 (UTC)
Message-Id: <20130222071238.D857B63E500@www.NetBSD.org>
Date: Fri, 22 Feb 2013 07:12:38 +0000 (UTC)
From: jdbaker@mylinuxisp.com
Reply-To: jdbaker@consolidated.net
To: gnats-bugs@NetBSD.org
Subject: libavutil.so major version collision w/ffmpeg vs. ffmpeg010
X-Send-Pr-Version: www-1.0

>Number:         47582
>Notify-List:    jdbaker@consolidated.net
>Category:       pkg
>Synopsis:       libavutil.so major version collision w/ffmpeg vs. ffmpeg010
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          closed
>Class:          support
>Submitter-Id:   net
>Arrival-Date:   Fri Feb 22 07:15:00 +0000 2013
>Closed-Date:    Wed Feb 03 09:00:05 +0000 2021
>Last-Modified:  Wed Feb 03 09:00:05 +0000 2021
>Originator:     John D. Baker
>Release:        NetBSD 6.1_RC1/amd64, pkgsrc-2012Q4
>Organization:
>Environment:
NetBSD skuld 6.1_RC1 NetBSD 6.1_RC1 (SKULD) #16: Wed Feb 20 01:07:18 CST 2013  sysop@skuld:/d0/build/netbsd-6/obj/amd64/sys/arch/amd64/compile/SKULD amd64

>Description:
"multimedia/ffmpeg" and "multimedia/ffmpeg010" both include
"libavutil.so.51".  This can (and has) confused applications that need
the older "ffmpeg010" package, but also have "ffmpeg" (v1.0.1) installed.

When such an application asks for "libavformat.so.53", the linker finds
it in "/usr/pkg/lib/ffmpeg010/libavformat.so.53".  When subsequently
asked for "libavutil.so.51", the linker finds it in
"/usr/pkg/lib/libavutil.so.51".  The application fails, likely with
much complaining about inability to find codecs and spewing messages
with bizarre numbers which appear to represent addresses or offsets.


>How-To-Repeat:
On a system with pkgsrc-2012Q4 and an up-to-date "pkgsrc-wip",
install "wip/electricsheep-svn" (bringing in "multimedia/ffmpeg010" as
a dependency).

Then install "multimedia/ffmpeg" (or a package which depends on it).

Attempt to run 'electricsheep'.

Watch fireworks.

Also "ktruss -i electricsheep" and watch the shared libraries being
opened.
>Fix:
Is there a way to force linking against the full library version?
"ffmpeg010" has "libavutil.so.51.35.100" while "ffmpeg" has version
"libavutil.so.51.73.101"

Alternatively, pull up ffmpeg (v1.1.x) from HEAD as it has
"libavutil.so.52" which will eliminate the collision at the major version
number.

There may yet be a problem as libpostproc.so.52, libswresample.so.0, and
libswscale.so.2 still collide between the two versions of ffmpeg.

>Release-Note:

>Audit-Trail:
From: "OBATA Akio" <obache@netbsd.org>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: pkg/47582: libavutil.so major version collision w/ffmpeg vs.
 ffmpeg010
Date: Thu, 07 Mar 2013 20:14:10 +0900

 Not tested, but the issue may be resolved if you move buildlink of ffmpeg010
 to top of the list, before jpeg.
 (rpath to ${LOCALBASE}/lib/ffmpeg010 will be added first).

From: "John D. Baker" <jdbaker@mylinuxisp.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/47582: libavutil.so major version collision w/ffmpeg vs.
 ffmpeg010
Date: Thu, 7 Mar 2013 15:21:10 -0600 (CST)

 On Thu, 7 Mar 2013, OBATA Akio wrote:

 > Not tested, but the issue may be resolved if you move buildlink of ffmpeg010
 > to top of the list, before jpeg.
 > (rpath to ${LOCALBASE}/lib/ffmpeg010 will be added first).

 I made this change to "wip/electricsheep-svn/Makefile" and rebuilt.
 The "${LOCALBASE/lib/ffmpeg010/" library was searched first.

 Perhaps other packages that depend on ffmpeg010 or older versions of
 other libraries/packages should be check to make sure they reference
 those buildlink3.mk files before any others.

 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645

State-Changed-From-To: open->closed
State-Changed-By: nia@NetBSD.org
State-Changed-When: Wed, 03 Feb 2021 09:00:05 +0000
State-Changed-Why:
there's now fewer old versions of ffmpeg in pkgsrc and
they should all be able to coexist safely.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.