net-misc/dropbox-43 depends on dev-qt/qtwebkit, dev-libs/leveldb, dev-qt/qtsql (why it depends on qtsql I have no idea). However, these are not declared as dependencies, so if nothing else installed depends on them, an emerge -avc will remove them, leaving net-misc/dropbox with missing-dependency preserved libs: !!! existing preserved libs: >>> package: dev-qt/qtwebkit-5.9.1 * - /usr/lib64/libQt5WebKit.so.5 * - /usr/lib64/libQt5WebKit.so.5.9.1 * used by /opt/dropbox/libQt5WebKitWidgets.so.5 (net-misc/dropbox-43.3.47) >>> package: dev-libs/leveldb-1.18-r2 * - /usr/lib64/libleveldb.so.1 * - /usr/lib64/libleveldb.so.1.18 * used by /usr/lib64/libQt5WebKit.so.5 (preserved) * used by /usr/lib64/libQt5WebKit.so.5.9.1 (preserved) * - /usr/lib64/libmemenv.so.1 * - /usr/lib64/libmemenv.so.1.18 * used by /usr/lib64/libQt5WebKit.so.5 (preserved) * used by /usr/lib64/libQt5WebKit.so.5.9.1 (preserved) >>> package: dev-qt/qtsql-5.9.4 * - /usr/lib64/libQt5Sql.so.5 * - /usr/lib64/libQt5Sql.so.5.9.4 * used by /opt/dropbox/libQt5WebKit.so.5 (net-misc/dropbox-43.3.47) * used by /opt/dropbox/libQt5WebKitWidgets.so.5 (net-misc/dropbox-43.3.47) Use emerge @preserved-rebuild to rebuild packages using these libraries But because they are not declared as dependencies, emerge @preserved-rebuild will not rebuild the missing packages and will not fix the problem. Explicitly emerging these three required packages *as well* so that the dropbox dependencies are satisfied pulls in 20 packages in all, because QtWebkit pulls in ruby, and ruby pulls in ... babylon5:root:~:8 # emerge -av dev-qt/qtwebkit dev-qt/qtsql dev-libs/leveldb net-misc/dropbox These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] dev-libs/libyaml-0.1.7::gentoo USE="-doc -examples -static-libs {-test}" 0 KiB [ebuild N ] app-eselect/eselect-ruby-20170723::gentoo 0 KiB [ebuild N ] dev-util/google-perftools-2.6.2:0/4::gentoo USE="debug -largepages -minimal -optimisememory -static-libs {-test}" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild N ] dev-util/ragel-6.10::gentoo USE="-vim-syntax" 0 KiB [ebuild R ~] net-misc/dropbox-43.3.47::gentoo USE="librsync-bundled -X (-selinux)" PYTHON_SINGLE_TARGET="python3_5 -python2_7" PYTHON_TARGETS="python2_7 python3_5" 0 KiB [ebuild N ] dev-libs/leveldb-1.18-r2::gentoo USE="snappy tcmalloc -static-libs" 0 KiB [ebuild N ] dev-lang/ruby-2.3.6:2.3::gentoo USE="berkdb gdbm ipv6 ncurses rdoc readline ssl tk -debug -doc -examples -jemalloc -libressl -rubytests -socks5 -xemacs" 0 KiB [ebuild N ] dev-ruby/rubygems-2.6.14::gentoo USE="-server {-test}" RUBY_TARGETS="ruby23 -ruby22 (-ruby24)" 0 KiB [ebuild N ] virtual/rubygems-11::gentoo RUBY_TARGETS="ruby23 (-rbx) -ruby22" 0 KiB [ebuild N ] dev-ruby/did_you_mean-1.0.2:1::gentoo USE="{-test}" RUBY_TARGETS="ruby23" 0 KiB [ebuild N ] dev-ruby/rake-10.5.0::gentoo USE="-doc {-test}" RUBY_TARGETS="ruby23 -ruby22" 0 KiB [ebuild N ] dev-ruby/minitest-5.9.1:5::gentoo USE="-doc {-test}" RUBY_TARGETS="ruby23 -ruby22" 0 KiB [ebuild N ] dev-ruby/json-1.8.6-r1::gentoo USE="-doc {-test}" RUBY_TARGETS="ruby23 -ruby22 (-ruby24)" 0 KiB [ebuild N ] dev-ruby/net-telnet-0.1.1-r1:1::gentoo USE="-doc {-test}" RUBY_TARGETS="ruby23 -ruby22 (-ruby24) (-ruby25)" 0 KiB [ebuild N ] dev-ruby/power_assert-0.3.1::gentoo USE="-doc {-test}" RUBY_TARGETS="ruby23 -ruby22" 0 KiB [ebuild N ] dev-ruby/test-unit-3.1.9:2::gentoo USE="-doc {-test}" RUBY_TARGETS="ruby23 -ruby22" 0 KiB [ebuild N ] dev-ruby/racc-1.4.14::gentoo USE="-doc {-test}" RUBY_TARGETS="ruby23 -ruby22 (-ruby24) (-ruby25)" 0 KiB [ebuild N ] dev-ruby/rdoc-4.3.0::gentoo USE="-doc {-test}" RUBY_TARGETS="ruby23 -ruby22" 0 KiB [ebuild NS ~] dev-qt/qtsql-5.9.4:5/5.9::gentoo [4.8.7-r1:4::gentoo] USE="mysql sqlite -debug -freetds -oci8 -odbc -postgres {-test}" 0 KiB [ebuild N ~] dev-qt/qtwebkit-5.9.1:5/5.9::gentoo USE="jit opengl -debug -geolocation (-gles2) -gstreamer -multimedia -orientation -printsupport -qml {-test} -webchannel -webp" 0 KiB Total: 20 packages (18 new, 1 in new slot, 1 reinstall), Size of downloads: 0 KiB
Actually I guess it's QtWebkit that's pulling in QtSql ... but the result is the same.
dev-qt/qtwebkit is already covered.
Actually, dropbox should depend directly on qtsql: ldd /opt/dropbox/libQt5WebKit.so.5 |& grep -i sql libQt5Sql.so.5 => /usr/lib64/libQt5Sql.so.5 (0x00007fed183f8000)
And on a current system, qtwebkit doesn't pull qtsql
I have just bumped dropbox, and as far as I can see this new version now supplies libQt5Sql.so.5 and nothing uses libmemenv from leveldb. I'd like to close this bug eventually, after a newer version of dropbox is marked stable, but please let me know if this issue does still affect 81.4.195