0

在经历了很多问题之后让 DBUS 在 OS X Mavericks 上工作后,我遇到了最后一个问题。如果我不在 libdbus 所在的目录中,我的应用程序无法与总线交互。

为了清楚起见:下面的简单程序,基本上是 Widgets-Template,用于测试:

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QDBusConnection con = QDBusConnection::sessionBus();
    std::cout << "Connection status " << con.isConnected() << std::endl;
}

MainWindow::~MainWindow()
{
    delete ui;
}

当从 QT Creator 中运行它时,我会得到:

Connection status 0

当移动到我的 lib-Path(它是 /opt/local/lib/;通过端口安装 dbus)并调用 /path/to/project/executable 时,我得到:

Connection status 1

那么我必须做些什么才能从每个位置启动我的应用程序?

4

0 回答 0