Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 685110 - media-libs/rubberband-1.8.2 - ld: cannot open output file lib/librubberband.so: No such file or directory
Summary: media-libs/rubberband-1.8.2 - ld: cannot open output file lib/librubberband.s...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Professional Audio Applications Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-05-05 15:16 UTC by Nikita Zlobin
Modified: 2020-09-20 08:31 UTC (History)
0 users

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


Attachments
Build log (rubberband-buildlog.txt,28.13 KB, text/plain)
2019-05-05 15:21 UTC, Nikita Zlobin
Details
emerge info (rubberband-emerge-info.txt,15.05 KB, text/plain)
2019-05-05 15:21 UTC, Nikita Zlobin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nikita Zlobin 2019-05-05 15:16:54 UTC
My system is x86_64, and rubberband is built for both 64bit and 32bit.
32bit version is built first - it is ok, but 64bit fails there:

x86_64-pc-linux-gnu-g++ -shared -Wl,-Bsymbolic -Wl,-soname=librubberband.so.2 src/rubberband-c.o src/RubberBandStretcher.o src/StretcherProcess.o src/StretchCalculator.o src/base/Profiler.o src/dsp/AudioCurveCalculator.o src/audiocurves/CompoundAudioCurve.o src/audiocurves/SpectralDifferenceAudioCurve.o src/audiocurves/HighFrequencyAudioCurve.o src/audiocurves/SilentAudioCurve.o src/audiocurves/ConstantAudioCurve.o src/audiocurves/PercussiveAudioCurve.o src/dsp/Resampler.o src/dsp/FFT.o src/system/Allocators.o src/system/sysutils.o src/system/Thread.o src/StretcherChannelData.o src/StretcherImpl.o -o lib/librubberband.so -lsamplerate -lfftw3  -O2 -lpthread -O2
/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot open output file lib/librubberband.so: No such file or directory
collect2: error: ld returned 1 exit status

After looking to all subdirs inside WORKDIR (origin and multilib copies) i found, that only 32bit copy has "lib" subdir, which is created by configuration. But 64bit is configured too (has config.log with same conf command as in build log).

Previous time it was installed by upgrade, and also for both 32 and 64 bit.
But that time I had glibc-2.26. Now I upgraded glibc to 2.27 (I suspect more possible build failures with 2.28, so trying to do it step-by-step). Now I'm doing $ emerge -1avbke @system.
Comment 1 Nikita Zlobin 2019-05-05 15:21:04 UTC
Created attachment 575330 [details]
Build log
Comment 2 Nikita Zlobin 2019-05-05 15:21:57 UTC
Created attachment 575332 [details]
emerge info
Comment 3 Nikita Zlobin 2019-05-05 15:34:09 UTC
Ooops... This bug is appears hard to reproduce.
After $ emerge --info it passed without problems and any attempts to fix.
Comment 4 Nikita Zlobin 2019-05-05 16:43:52 UTC
It appears 1 to 2 times or so. No matter, wether temporary directories exist or not (emerge removes old dir if found, before new emerge).
Comment 5 Nikita Zlobin 2019-06-10 21:06:44 UTC
Found root of problem: 'lib' dir in source dir root should be created by make rule in dependencies of 'all':

all:    bin lib $(PROGRAM_TARGET)  $(DYNAMIC_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET)

But such makefile design is clearly uncareful of multiple make jobs.

Adding -j1 to make options solves problem.
Comment 6 Nikita Zlobin 2019-06-12 17:26:10 UTC
It appears with options like '-j3 -l1.8' (for my 2-core cpu), but
with just -j3 it is ok.

I'm not sure, is it sys-devel/make bug, because rubberband's Makefile still seems to be not enough well designed (or I just don't comprehend something).
Comment 7 Larry the Git Cow gentoo-dev 2020-09-20 08:31:15 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8edcf54165e5af94c9a59c4ae60704c7561e7557

commit 8edcf54165e5af94c9a59c4ae60704c7561e7557
Author:     Miroslav Šulc <fordfrog@gentoo.org>
AuthorDate: 2020-09-20 08:30:58 +0000
Commit:     Miroslav Šulc <fordfrog@gentoo.org>
CommitDate: 2020-09-20 08:31:11 +0000

    media-libs/rubberband: bump to 1.9.0
    
    1) added use flags for optional features
    2) organized deps
    
    Closes: https://bugs.gentoo.org/547904
    Closes: https://bugs.gentoo.org/685110
    Closes: https://bugs.gentoo.org/590500
    Package-Manager: Portage-3.0.7, Repoman-3.0.1
    Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>

 media-libs/rubberband/Manifest                |  1 +
 media-libs/rubberband/metadata.xml            |  4 ++
 media-libs/rubberband/rubberband-1.9.0.ebuild | 67 +++++++++++++++++++++++++++
 3 files changed, 72 insertions(+)