晚上好,我继承了一个使用QT creator(C++ 和 Qt Quick)制作的项目。目标是带有 **Linux kernel 2.6.37 ** 的DaVinci DM8168板。
特别是我使用 Qt Creator 4.2.0 (4.2.0) 基于Qt 5.7.1 (GCC 4.9.1 20140922 (Red Hat 4.9.1-10), 64 bit)
我可以为目标构建和运行应用程序,并且可以看到它正在运行。
我需要启动分析器。但它不起作用。当我使用参数运行应用程序(在目标上)时:
qmljsdebugger=port:xxxx
然后应用程序不再启动!
我尝试将这些选项添加到项目的 .pro 文件中:
DEFINES '' += QMLJSDEBUGGER
DEFINES '' += QT_DECLARATIVE_DEBUG
PACKAGECONFIG_append = " qml-debug"
显然,我是在调试模式下构建的。
当我尝试在目标上运行应用程序时,我收到以下消息:
QML 调试已启用。仅在安全的环境中使用。进程被信号杀死
我再说一遍:如果选项“qmljsdebugger=port:xxxx”被删除,那么应用程序将启动并正常工作..但当然在这种情况下分析器不会连接。
正如我所说,我继承了该项目,并且对这个环境完全陌生。
有什么帮助或建议吗?
更新
这些现在是我添加到 .pro 文件中的行
DEFINES '' += QMLJSDEBUGGER
DEFINES '' += QT_QML_DEBUG
CONFIG += qml_debug
我检查了 QT 的各种路径并导出PATH
和LD_LIBRARY_PATH
. 不幸的是,没有任何改变:如果我使用以下方式启动我的程序:
/opt/MyPrefix/MyProgram -platform eglfs
然后它工作。
如果我使用:
/opt/MyPrefix/MyProgram -qmljsdebugger=port:3456 -platform eglfs
然后它崩溃了
QML 调试已启用。仅在安全的环境中使用。分段故障
该程序似乎以调试模式启动,这没关系。问题是探查器:(
ps:据我所知,目标上没有运行防火墙。我一定会检查得更好。
更新 2
我尝试了与上述相同的解决方案,但在一个简单的程序上尝试了建议(基本上是“hello world”),并且在指定“-qmljsdebugger=port:3456”选项时它不会崩溃......我真的不知道是什么问题出在我原来的应用程序中。