qdbus needs qtchooser dependency to work

Bug #1177823 reported by Patola
88
This bug affects 19 people
Affects Status Importance Assigned to Milestone
qt4-x11 (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

If the system does not have ubuntu-sdk installed, any qdbus command does not work, e.g.

[10:49] [2372] [patola@nexus7 patola]% qdbus
qdbus: could not find a Qt installation of ''
[10:49] [2373] [patola@nexus7 patola]% qdbus --help
qdbus: could not find a Qt installation of ''
[10:50] [2374] [patola@nexus7 patola]% qdbus org.freedesktop.DBus
qdbus: could not find a Qt installation of ''

I am not sure if it is anything specific to qt5-default or its dependencies. I tried to install only qttools5-dev-tools and qt5-default so that it would use qtchooser as qdbus, but it didn't work. I had to install the whole ubuntu-sdk.

Tested on a Nexus7 and Chromebook Series 3 with Chrubuntu, both armhf, but I guess this is also valid for the Intel architecture.

LSB RELEASE:
root@nexus7:~# lsb_release -rd
Description: Ubuntu 13.04
Release: 13.04

WHAT I EXPECTED TO HAPPEN:
[11:09] [2388] [patola@nexus7 patola]% qdbus org.freedesktop.DBus /
signal void org.freedesktop.DBus.NameAcquired(QString)
signal void org.freedesktop.DBus.NameLost(QString)
signal void org.freedesktop.DBus.NameOwnerChanged(QString, QString, QString)
method void org.freedesktop.DBus.AddMatch(QString)
method QByteArray org.freedesktop.DBus.GetAdtAuditSessionData(QString)
method QByteArray org.freedesktop.DBus.GetConnectionSELinuxSecurityContext(QString)
method uint org.freedesktop.DBus.GetConnectionUnixProcessID(QString)
method uint org.freedesktop.DBus.GetConnectionUnixUser(QString)
method QString org.freedesktop.DBus.GetId()
method QString org.freedesktop.DBus.GetNameOwner(QString)
method QString org.freedesktop.DBus.Hello()
method QStringList org.freedesktop.DBus.ListActivatableNames()
method QStringList org.freedesktop.DBus.ListNames()
method QStringList org.freedesktop.DBus.ListQueuedOwners(QString)
method bool org.freedesktop.DBus.NameHasOwner(QString)
method uint org.freedesktop.DBus.ReleaseName(QString)
method void org.freedesktop.DBus.ReloadConfig()
method void org.freedesktop.DBus.RemoveMatch(QString)
method uint org.freedesktop.DBus.RequestName(QString, uint)
method uint org.freedesktop.DBus.StartServiceByName(QString, uint)

ProblemType: Bug
DistroRelease: Ubuntu 13.04
Package: qdbus 4:4.8.4+dfsg-0ubuntu9
Uname: Linux 3.1.10-10-nexus7 armv7l
ApportVersion: 2.9.2-0ubuntu8
Architecture: armhf
Date: Wed May 8 10:57:09 2013
InstallationDate: Installed on 2013-03-15 (54 days ago)
InstallationMedia: Ubuntu Raring Ringtail (development branch) - armhf (20130314-15:12)
MarkForUpload: True
SourcePackage: qt4-x11
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Patola (patola) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in qt4-x11 (Ubuntu):
status: New → Confirmed
Revision history for this message
Dmitry Shachnev (mitya57) wrote :

This was fixed in this commit: http://anonscm.debian.org/gitweb/?p=pkg-kde/qt/qt4-x11.git;a=commitdiff;h=c5570ef5727, so will be fixed in the next Debian merge (we are working on it).

summary: - qdbus needs dependency ubuntu-sdk to work
+ qdbus needs qtchooser dependency to work
Revision history for this message
Murz (murznn) wrote :

qtchooser dependency is not help, after installing I got on fresh Kubuntu 13.04 this error too:
 qdbus: could not find a Qt installation of ''
Installing qt4-default package solve the problem for me.

Revision history for this message
Dmitry Shachnev (mitya57) wrote :

We are definitely not going to make qt4 default (as we are trying to port everything to qt5), but we can suggest virtual "qt-default" package.

Without qt-default package you can use "QT_SELECT=qt4 qdbus" or even (in 4.8.5 packages) "qdbus -qt4".

Revision history for this message
TeXHaPb (staryx) wrote :

Also libqt4-dev needed to make qt4-default works.

Revision history for this message
Götz Christ (g-christ) wrote :

With qt4-default installed (13.04) it still doesn't work.

$ qdbus
qdbus: could not open config file '/usr/share/qtchooser//default.conf': No such file or directory

I don't know what the // means, but the /usr/share/qtchooser/default.conf link points to a non-existing qt4.conf.

/usr/share/qtchooser/default.conf -> qt4.conf

How can I use qdbus or qtconfig?

Revision history for this message
kodx (kodx) wrote :

Confirm this bug on Ubuntu 13.04
After installing qt4-dev-tools strated to work (as mentioned before). But this is not how it should be. qdbus (and other qt tools) have to work without any development dependencies.

Revision history for this message
Gannet (ken20001) wrote :

lsb_release -rd
Description: Ubuntu Saucy Salamander (development branch)
Release: 13.10

The same problem.

Revision history for this message
Mephisto861 (rcaez) wrote :

TEMPORARY FIX:
change target of sym.link "/usr/bin/qdbus" from "qtchooser" to "/usr/lib/i386-linux-gnu/qt4/bin/qdbus" (for 32bit)... and TA-DAAA qdbus call is now reenable.

(For 64bit point the sym.link to "/usr/lib/x86_64-linux-gnu/qt4/bin/qdbus".This temporary solution prevents qdbus to invoke bugged qtchooser and calls directly qt4's qdbus bin.

If u want use qt5 i think u must find in "/usr/lib/x86_64-linux-gnu/qt5/bin/ " the right binary for qdbus but iI do not know, have not tried with QT5

Tested on kubuntu 13.04 but but should be fine on ubuntu 13.04 and all derived afflicted by the bug .
However, the problem stems from qtchooser executable. I hope will be resolved soon

...sorry for my poor english... i'm ITALIAN

Revision history for this message
Mephisto861 (rcaez) wrote :

TEMPORARY FIX should be fine also in 13.10

Revision history for this message
Amadu (amadu80) wrote :

sudo apt-get install qt5-default qttools5-dev-tools works for me

Revision history for this message
Lê Hoàng Phương (herophuong93) wrote :

My workaround:
+ Use qtchooser to list all available Qt versions:
qtchooser -list-versions
+ Add this line to ~/.bashrc
export QT_SELECT=qt5 # this depends on what you have from previous command)
Log out then log in, or:
source ~/.bashrc

Revision history for this message
Shriramana Sharma (jamadagni) wrote :

Confirming solution in comment #13 works for me...

Revision history for this message
Oded Arbel (oded-geek) wrote :

Problem still exists in Zesty, confirming herophuong93 workaround works for me.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.