Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 731660 - media-sound/teamspeak-client-3.5.3 with <=dev-util/patchelf-0.8 - src_prepare(): patchelf --replace-needed libquazip.so libquazip5.so.1 fails
Summary: media-sound/teamspeak-client-3.5.3 with <=dev-util/patchelf-0.8 - src_prepare...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Conrad Kostecki
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-07-08 01:01 UTC by Pavel Goran
Modified: 2020-07-10 02:46 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pavel Goran 2020-07-08 01:01:41 UTC
When trying to build media-sound/teamspeak-client-3.5.3 while having dev-util/patchelf-0.8 installed, I get the following:

>>> Emerging (1 of 1) media-sound/teamspeak-client-3.5.3::gentoo
 * TeamSpeak3-Client-linux_amd64-3.5.3.run BLAKE2B SHA512 size ;-) ...                                               [ ok ]
>>> Unpacking source...
>>> Unpacking TeamSpeak3-Client-linux_amd64-3.5.3.run to /var/tmp/portage/media-sound/teamspeak-client-3.5.3/work
1147+1 records in
190174+1 records out
97369341 bytes (97 MB, 93 MiB) copied, 2.02291 s, 48.1 MB/s
>>> Source unpacked in /var/tmp/portage/media-sound/teamspeak-client-3.5.3/work
>>> Preparing source in /var/tmp/portage/media-sound/teamspeak-client-3.5.3/work ...
stat: No such file or directory
 * ERROR: media-sound/teamspeak-client-3.5.3::gentoo failed (prepare phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line 125:  Called src_prepare
 *   environment, line 1644:  Called die
 * The specific snippet of code:
 *           patchelf --replace-needed libquazip.so libquazip5.so.1 "${soname_file}" || die;
 * 
 * If you need support, post the output of `emerge --info '=media-sound/teamspeak-client-3.5.3::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-sound/teamspeak-client-3.5.3::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-sound/teamspeak-client-3.5.3/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-sound/teamspeak-client-3.5.3/temp/environment'.
 * Working directory: '/var/tmp/portage/media-sound/teamspeak-client-3.5.3/work'
 * S: '/var/tmp/portage/media-sound/teamspeak-client-3.5.3/work'

Apparently the 0.8 version of patchelf doesn't support --replace-needed. After upgrading patchelf, I was able to build teamspeak-client.

So the ebuild needs to specify a version in its patchelf dependency:

BDEPEND=">=dev-util/patchelf-0.10"

or something, instead of the current

BDEPEND="dev-util/patchelf"


Reproducible: Always

Steps to Reproduce:
1. Have dev-util/patchelf-0.8 installed
2. Try to install media-sound/teamspeak-client-3.5.3
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2020-07-09 16:28:50 UTC
commit 306f0be7307c0edf4ef397cbdf9e7363e7ed458a
Author: James Le Cuirot <chewi@gentoo.org>
Date:   Fri Nov 22 22:02:51 2019 +0000

    dev-util/patchelf: Drop old 0.8

    Package-Manager: Portage-2.3.79, Repoman-2.3.17
    Signed-off-by: James Le Cuirot <chewi@gentoo.org>


Either the ebuild (or all ebuilds ever) should be adapted to support systems out of date by about half a year, or you failed to keep your system up to date by about half a year.
Comment 2 Pavel Goran 2020-07-09 16:52:58 UTC
Ebuilds should work in presence of *declared* dependencies, no matter how old.
Comment 3 Conrad Kostecki gentoo-dev 2020-07-09 17:48:17 UTC
(In reply to Pavel Goran from comment #2)
> Ebuilds should work in presence of *declared* dependencies, no matter how
> old.

The ebuild with using patchelf was commited first after the old patchelf has been already dropped. So you can't assume, that it's being tested with versions which were already dropped.

Anyway, I will update BDEPEND.
Comment 4 Larry the Git Cow gentoo-dev 2020-07-09 17:58:43 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=25c3ba97b75a0fd6bdaa11ce2e2cca2e7c9f2dcb

commit 25c3ba97b75a0fd6bdaa11ce2e2cca2e7c9f2dcb
Author:     Conrad Kostecki <conikost@gentoo.org>
AuthorDate: 2020-07-09 17:56:04 +0000
Commit:     Conrad Kostecki <conikost@gentoo.org>
CommitDate: 2020-07-09 17:57:29 +0000

    media-sound/teamspeak-client: bdepend on newer patchelf
    
    As older versions of patchelf do not support --replace-needed.
    
    Closes: https://bugs.gentoo.org/731660
    Package-Manager: Portage-2.3.103, Repoman-2.3.23
    Signed-off-by: Conrad Kostecki <conikost@gentoo.org>

 media-sound/teamspeak-client/teamspeak-client-3.5.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 5 Pavel Goran 2020-07-10 02:46:07 UTC
(In reply to Conrad Kostecki from comment #3)
> The ebuild with using patchelf was commited first after the old patchelf has
> been already dropped. So you can't assume, that it's being tested with
> versions which were already dropped.

I see, this makes sense.

> Anyway, I will update BDEPEND.

Thank you.