QT_MESSAGE_PATTERN不适用于树莓派交叉编译

时间:2020-01-09 06:31:58

标签: qt raspberry-pi cross-compiling qdebug

我在PC和树莓派的构建环境中调整了QT_MESSAGE_PATTERN。

当我在PC上运行时,调试会为我提供调整后的输出,但是当我在树莓派(部署)上运行时,调试会给我一个输出,就像我没有调整....

这是调整项;

QT_MESSAGE_PATTERN = "[(%{file}:%{line}) - %{message}"

2 个答案:

答案 0 :(得分:1)

要工作,您需要做:

  1. qSetMessagePattern(QT_MESSAGE_PATTERN);
  2. qInstallMessageHandler(yourCustomMessageHandle r);

答案 1 :(得分:1)

您需要设置消息模式;在int main()的开头添加qputenv("QT_MESSAGE_PATTERN", QByteArray("[(%{file}:%{line}) - %{message}"));

尝试以下代码段:

#include <QDebug>

#include <unistd.h>

int main(int /*argc*/, char* /*argv*/ [])
{
    qputenv("QT_MESSAGE_PATTERN", QByteArray("[(%{file}:%{line}) - %{message}"));

    while (1) {
        sleep(1);
        qDebug() << "Message";
    }
}