Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 654572 - media-sound/clementine: fails to build with =dev-libs/crypto++-7.0.0
Summary: media-sound/clementine: fails to build with =dev-libs/crypto++-7.0.0
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Lars Wendler (Polynomial-C) (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-05-02 00:41 UTC by Sam Jorna (wraeth)
Modified: 2018-05-02 07:53 UTC (History)
1 user (show)

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


Attachments
emerge.info (emerge.info,6.37 KB, text/plain)
2018-05-02 01:10 UTC, Sam Jorna (wraeth)
Details
build.log.gz (build.log.gz,52.04 KB, text/plain)
2018-05-02 01:11 UTC, Sam Jorna (wraeth)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sam Jorna (wraeth) gentoo-dev 2018-05-02 00:41:30 UTC
After updating dev-libs/crypto++ to 7.0.0, rebuilding clementine due to preserved-rebuild results in the following failure:

> /usr/bin/x86_64-pc-linux-gnu-g++  -O2 -pipe -march=native -Woverloaded-virtual -Wall -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-local-typedefs -Wno-unused-private-field -Wno-unknown-warning-option --std=c++0x -U__STRICT_ANSI__  -Wl,-O1 -Wl,--as-needed -rdynamic CMakeFiles/clementine.dir/main.cpp.o  -o ../clementine libclementine_lib.a ../ext/libclementine-spotifyblob/libclementine-spotifyblob-messages.a ../ext/libclementine-tagreader/liblibclementine-tagreader.a ../ext/libclementine-remote/liblibclementine-remote.a ../ext/libclementine-common/liblibclementine-common.a -lprotobuf ../3rdparty/sha2/libsha2.a -ltag -lmygpo-qt5 -lQt5Network -lQt5Core -lchromaprint ../3rdparty/qtsingleapplication/libqtsingleapplication.a ../3rdparty/qtiocompressor/libqtiocompressor.a -lgobject-2.0 -lglib-2.0 -lgio-2.0 -lgstbase-1.0 -lgstreamer-1.0 -lgstapp-1.0 -lgsttag-1.0 -lgstpbutils-1.0 -lz -lgobject-2.0 -lglib-2.0 -lgio-2.0 -lgstbase-1.0 -lgstreamer-1.0 -lgstapp-1.0 -lgsttag-1.0 -lgstpbutils-1.0 -lz -lpthread ../3rdparty/qocoa/libQocoa.a /usr/lib64/libQt5OpenGL.so.5.9.5 /usr/lib64/libQt5Network.so.5.9.5 /usr/lib64/libQt5Xml.so.5.9.5 /usr/lib64/libQt5Concurrent.so.5.9.5 /usr/lib64/libQt5DBus.so.5.9.5 -lcdio -lm -lcrypto++ -lpulse ../3rdparty/qxt/libqxt.a /usr/lib64/libQt5Widgets.so.5.9.5 /usr/lib64/libQt5X11Extras.so.5.9.5 /usr/lib64/libQt5Gui.so.5.9.5 ../3rdparty/qsqlite/libqsqlite.a /usr/lib64/libQt5Sql.so.5.9.5 /usr/lib64/libQt5Core.so.5.9.5 -lsqlite3 -lX11 -ldl 
> /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lcrypto++
> collect2: error: ld returned 1 exit status
> make[2]: *** [src/CMakeFiles/clementine.dir/build.make:108: clementine] Error 1
Comment 1 Sam Jorna (wraeth) gentoo-dev 2018-05-02 01:10:03 UTC
Created attachment 529304 [details]
emerge.info

emerge.info
Comment 2 Sam Jorna (wraeth) gentoo-dev 2018-05-02 01:11:10 UTC
Created attachment 529306 [details]
build.log.gz

build.log
Comment 3 jorgicio 2018-05-02 03:06:15 UTC
I think it's because there are not symlinks with the "crypto++" name, only with "cryptopp". In fact, they were not created like in previous version.

Just compare the src_install ebuilds in both versions. In the 7.0.0 version, symlinks with the "crypto++" name were not created, leading to failures like what it happens with clementine.
Comment 4 jorgicio 2018-05-02 03:39:50 UTC
Those lines are missing in the 7.0.0 ebuild:

#compatibility
	dosym cryptopp "${EPREFIX}"/usr/include/crypto++
	for f in "${ED}${EPREFIX}"/usr/$(get_libdir)/*;do
		ln -s "$(basename "${f}")" "$(echo "${f}" | sed 's/cryptopp/crypto++/')" || die
done

I did an ebuild with that, built it, then rebuilt clementine, and it compiles successfully.
Comment 5 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2018-05-02 06:50:43 UTC
(In reply to jorgicio from comment #4)
> Those lines are missing in the 7.0.0 ebuild:
> 
> #compatibility
> 	dosym cryptopp "${EPREFIX}"/usr/include/crypto++
> 	for f in "${ED}${EPREFIX}"/usr/$(get_libdir)/*;do
> 		ln -s "$(basename "${f}")" "$(echo "${f}" | sed 's/cryptopp/crypto++/')"
> || die
> done
> 
> I did an ebuild with that, built it, then rebuilt clementine, and it
> compiles successfully.

So is this something that schould be fixed in the clementine ebuilds or do you plan to re-introduce this in the crypto++ ebuild?
Comment 6 Larry the Git Cow gentoo-dev 2018-05-02 07:53:59 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=26b70a4e481a4a4a8833721b08f03736e610ee28

commit 26b70a4e481a4a4a8833721b08f03736e610ee28
Author:     Lars Wendler <polynomial-c@gentoo.org>
AuthorDate: 2018-05-02 07:53:30 +0000
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: 2018-05-02 07:53:53 +0000

    media-sound/clementine: Fixed build against latest dev-libs/crypto++
    
    Closes: https://bugs.gentoo.org/654572
    Package-Manager: Portage-2.3.33, Repoman-2.3.9

 media-sound/clementine/clementine-1.3.1_p20180416.ebuild | 2 +-
 media-sound/clementine/clementine-9999.ebuild            | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)