Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 588876 - net-analyzer/wireshark-2.1.1[qt5]: configure: error: /usr/bin/lrelease -version returned non-zero exit status
Summary: net-analyzer/wireshark-2.1.1[qt5]: configure: error: /usr/bin/lrelease -versi...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Netmon project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-07-15 10:23 UTC by Marien Zwart (RETIRED)
Modified: 2016-07-18 11:35 UTC (History)
2 users (show)

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


Attachments
config.log (config.log,194.47 KB, text/plain)
2016-07-15 10:23 UTC, Marien Zwart (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Marien Zwart (RETIRED) gentoo-dev 2016-07-15 10:23:39 UTC
Created attachment 440756 [details]
config.log

wireshark-2.1.1 fails to configure, with the following error (full config.log attached):

checking for uic-qt5... /usr/lib64/qt5/bin/uic
checking for moc-qt5... /usr/lib64/qt5/bin/moc
checking for rcc-qt5... /usr/lib64/qt5/bin/rcc
checking for lrelease-qt5... no
checking for lrelease... /usr/bin/lrelease
checking whether lrelease -version works... no
configure: error: /usr/bin/lrelease -version returned non-zero exit status

"/usr/bin/lrelease -version" prints "lrelease: could not find a Qt installation of ''" and exits nonzero. "/usr/lib64/qt5/bin/lrelease -version" works.

The ebuild passes the path to moc, rcc and uic to configure, using "$(usex qt5 UIC=$(qt5_get_bindir)/uic '')" and similar. It should probably be doing the same for lrelease (haven't tested that, though).

Comparing configure.ac in wireshark 2.1.0 and 2.1.1, the check for lrelease is new.

Running wireshark's configure directly works. Looks like the ebuild is patching out the code in aclocal.m4 that makes it automagically deal with lrelease being a link to qtchooser.
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2016-07-15 10:47:41 UTC
Fixed without revision bump. Thanks for the report!
Comment 2 Ben Kohler gentoo-dev 2016-07-15 16:58:31 UTC
I believe wireshark needs a dep on dev-qt/linguist-tools to provide qt5 lrelease, let me know if I should open a separate bug
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2016-07-16 06:22:32 UTC
I thought dev-qt/qtchooser would provide that, but we don't depend on that either.
Comment 4 mvaenskae 2016-07-16 10:19:09 UTC
Cheers, trying to install 'net-analyzer/wireshark-2.1.1' here as well and running into the same lrelease-qt5 issue.

Following dev-qt packages are installed according to `qlist -Iv` when it fails to compile:
dev-qt/qtchooser-0_p20151008
dev-qt/qtcore-4.8.7-r2
dev-qt/qtcore-5.6.1
dev-qt/qtdbus-4.8.7
dev-qt/qtdbus-5.6.1
dev-qt/qtdeclarative-5.6.1-r1
dev-qt/qtgui-4.8.7
dev-qt/qtgui-5.6.1
dev-qt/qtmultimedia-5.6.1
dev-qt/qtnetwork-5.6.1
dev-qt/qtopengl-5.6.1
dev-qt/qtprintsupport-5.6.1
dev-qt/qtscript-4.8.7
dev-qt/qtsql-5.6.1
dev-qt/qttest-4.8.7
dev-qt/qttest-5.6.1
dev-qt/qttranslations-4.8.7
dev-qt/qtwebkit-4.8.7
dev-qt/qtwebkit-5.6.1
dev-qt/qtwidgets-5.6.1
dev-qt/qtxml-5.6.1
dev-qt/qtxmlpatterns-4.8.7

This is the output of `ls -1 /usr/lib64/qt5/bin` for the above list of packages:
moc
qdbuscpp2xml
qdbusxml2cpp
qlalr
qmake
qml
qmlimportscanner
qmllint
qmlmin
qmlplugindump
qmlprofiler
qmlscene
qmltestrunner
rcc
syncqt.pl
uic

Installing 'dev-qt/linguist-tools:5/5.6' results in the following output of `ls -l /usr/lib64/qt5/bin`:
lconvert
lrelease
lupdate
moc
qdbuscpp2xml
qdbusxml2cpp
qlalr
qmake
qml
qmlimportscanner
qmllint
qmlmin
qmlplugindump
qmlprofiler
qmlscene
qmltestrunner
rcc
syncqt.pl
uic

Further, `equery f dev-qt/linguist-tools` returns:
 * Searching for linguist-tools in dev-qt ...
 * Contents of dev-qt/linguist-tools-5.6.1:
/usr
/usr/lib64
/usr/lib64/cmake
/usr/lib64/cmake/Qt5LinguistTools
/usr/lib64/cmake/Qt5LinguistTools/Qt5LinguistToolsConfig.cmake
/usr/lib64/cmake/Qt5LinguistTools/Qt5LinguistToolsConfigVersion.cmake
/usr/lib64/cmake/Qt5LinguistTools/Qt5LinguistToolsMacros.cmake
/usr/lib64/qt5
/usr/lib64/qt5/bin
/usr/lib64/qt5/bin/lconvert
/usr/lib64/qt5/bin/lrelease
/usr/lib64/qt5/bin/lupdate

Now the installation of 'net-analyzer/wireshark-2.1.1' fails without an error.

I propose to therefore include 'dev-qt/linguist-tools' as a dependency for 'net-analyzer/wireshark-2.1.1'.
Comment 5 Davide Pesavento (RETIRED) gentoo-dev 2016-07-16 13:47:47 UTC
(In reply to Jeroen Roovers from comment #3)
> I thought dev-qt/qtchooser would provide that, but we don't depend on that
> either.

No, you should never depend on qtchooser, it just provides wrappers in /usr/bin. The correct dep is on linguist-tools, and note it should be a build-time dep only.
Comment 6 Jeroen Roovers (RETIRED) gentoo-dev 2016-07-17 18:31:11 UTC
(In reply to Davide Pesavento from comment #5)
> (In reply to Jeroen Roovers from comment #3)
> > I thought dev-qt/qtchooser would provide that, but we don't depend on that
> > either.
> 
> No, you should never depend on qtchooser, it just provides wrappers in
> /usr/bin. The correct dep is on linguist-tools, and note it should be a
> build-time dep only.

Except when it's Qt4, I presume.
Comment 7 Jeroen Roovers (RETIRED) gentoo-dev 2016-07-17 18:33:02 UTC
Fixed without revision bump.
Comment 8 mvaenskae 2016-07-18 01:40:56 UTC
Cheers,

if 'dev-qt/linguist-tools' are a build time dependency I should be able to depclean it on my system, correct? Because right now I cannot.

Output of `emerge -av --depclean dev-qt/linguist-tools`:
Calculating dependencies... done!
  dev-qt/linguist-tools-5.6.1 pulled in by:
    net-analyzer/wireshark-2.1.1 requires dev-qt/linguist-tools:5

>>> No packages selected for removal by depclean
Packages installed:   1127
Packages in world:    131
Packages in system:   46
Required packages:    1127
Number removed:       0

Further, 'dev-qt/linguist-tools' is listed as DEPEND in the current wireshark-2.1.1 ebuild. Isn't this the wrong DEPEND category for build time dependency?
Comment 9 Jeroen Roovers (RETIRED) gentoo-dev 2016-07-18 05:30:55 UTC
(In reply to mvaenskae from comment #8)
> if 'dev-qt/linguist-tools' are a build time dependency I should be able to
> depclean it on my system, correct? Because right now I cannot.

Interesting.

> Output of `emerge -av --depclean dev-qt/linguist-tools`:
> Calculating dependencies... done!
>   dev-qt/linguist-tools-5.6.1 pulled in by:
>     net-analyzer/wireshark-2.1.1 requires dev-qt/linguist-tools:5
> 
> >>> No packages selected for removal by depclean

I can't do that either:

# emerge -vp --depclean dev-qt/linguist-tools

Calculating dependencies... done!
  dev-qt/linguist-tools-5.5.1-r1 pulled in by:
    dev-qt/qt-creator-3.6.1 requires >=dev-qt/linguist-tools-5.4.0:5
    dev-qt/qttranslations-5.5.1-r1 requires ~dev-qt/linguist-tools-5.5.1
    kde-frameworks/sonnet-5.21.0 requires >=dev-qt/linguist-tools-5.5.1:5
    media-sound/qtractor-0.7.8 requires dev-qt/linguist-tools:5
    net-analyzer/wireshark-2.1.1 requires dev-qt/linguist-tools:5
    sci-astronomy/stellarium-0.14.3 requires dev-qt/linguist-tools:5
    x11-terms/qterminal-0.6.0-r1 requires dev-qt/linguist-tools:5

>>> No packages selected for removal by depclean
Packages installed:   2354
Packages in world:    760
Packages in system:   44
Required packages:    2354
Number to remove:     0

> Further, 'dev-qt/linguist-tools' is listed as DEPEND in the current
> wireshark-2.1.1 ebuild. Isn't this the wrong DEPEND category for build time
> dependency?

DEPEND means build time dependencies. RDEPEND means run time dependencies. net-analyzer/wireshark does not pull in dev-qt/linguist-tools in RDEPEND.
Comment 10 Marien Zwart (RETIRED) gentoo-dev 2016-07-18 09:15:25 UTC
Try again with --with-bdeps=n. From the emerge(1) manpage, under --depclean:
"See --with-bdeps for behavior with respect to build time dependencies"
and under --with-bdeps:
"This defaults to ´n´ for installation actions, meaning they will not be installed, and ´y´ for the --depclean action, meaning they will not be removed."

On my system, "emerge -vp --depclean --with-bdeps=n dev-qt/linguist-tools" will suggest uninstalling it, while "emerge -vp --depclean dev-qt/linguist-tools" complains about dependencies (including wireshark), as expected.
Comment 11 mvaenskae 2016-07-18 11:35:04 UTC
(In reply to Marien Zwart from comment #10)
> Try again with --with-bdeps=n. From the emerge(1) manpage, under --depclean:
> "See --with-bdeps for behavior with respect to build time dependencies"
> and under --with-bdeps:
> "This defaults to ´n´ for installation actions, meaning they will not be
> installed, and ´y´ for the --depclean action, meaning they will not be
> removed."
> 
> On my system, "emerge -vp --depclean --with-bdeps=n dev-qt/linguist-tools"
> will suggest uninstalling it, while "emerge -vp --depclean
> dev-qt/linguist-tools" complains about dependencies (including wireshark),
> as expected.

Cheers,

thanks, that solves this issue and further reading the manpage shows me that I made wrong assumptions in this case. Thanks for proving me wrong and educating me in the process.