2017-10-12 11 views
1

qmljsdebuggerがターゲットデバイスでホストするデータを収集するためにQML Profilerを使用したいと考えています。私は次のparamsで自分のアプリケーションを実行します。私は(外部)qtcreatorの中から、データを収集するためにプロファイラを実行しようQMLデバッグおよびqmljsdebuggerプロファイリングがYocto(poky-pyro)を使用したRPIで機能しない

<app executable> -qmljsdebugger = port:<any available> 

私は今、ターゲットデバイス上で直面しています 問題は2つです:

  1. アプリケーションがデバッグモードで実行されず、
  2. qmljsdebuggerモジュールが起動しません。

    QMLのデバッグが有効になっている:

は、私は、アプリケーションをデバッグモードで実行されている場合、アプリは、コマンドライン上で実行されたときに、次の行が表示されるべきであると考えています。安全な環境でのみ使用してください。 ( は表示されません)

qmljsdebuggerモジュールが起動すると、アプリケーションの実行時に次の行が表示されます。

QMLデバッガ:ポートでの接続を待っています。 ( は表示されません!)

さて、デバッグモードを有効にするために、私たちはプロジェクトの.PROファイルに次のように配置する必要があることを理解します。

qmljsdebuggerを起動するには、前述のようにapp実行可能ファイルとともにパラメータを指定する必要があります。

  1. 彼らは通常に住んでいるフォルダをqmltoolingにターゲットデバイス上に存在する必要が

libqmldbg_inspector.so libqmldbg_tcp.so:
私もそのqmljsdebuggerを理解するには、二つのファイルに依存していますシステムのqt5 libフォルダにあるpluginsフォルダに移動します。
これらのファイルはデバイス上にありませんでした。そこで私はbitbakeツールチェーンを試して、そこからこれらのファイルを入手しました。しかし、私が得るのは、上記の2つのファイルをqmltoolingフォルダに入れるのではなく、別の名前(libqmldbg_tcp_qtdeclarative.so)を持つ1つのファイルをqml1toolingフォルダに入れます。私はそれがうまくいくとは思っていませんでした。
それ以外は、lib、bin、includeをsysrootsから/ usr/lib、usr/bin、/ usr/includeフォルダにコピーしました。しかし、何もどこにでも盛り上がっていないようだ。 どんな助力も高く評価されます。

答えて

0

私はこれを行う方法を見つけました。問題のプラグインは、meta-qt5> recipes-qt> qt5のレシピqtbase_git.bbで無効になっています。 qml-debugオプションでqtbaseを設定するために、この行をコメントしなければなりませんでした。

# PACKAGECONFIG[qml-debug] = "-qml-debug,-no-qml-debug" 

選択されているデフォルトでは、それはqt5>プラグイン> qmltoolingフォルダ内のプラグインを作成することはできません何である無QML-デバッグ、ないだろう。 また、qmlアプリケーションをクロスコンパイルするためにツールチェーンを使用している場合は、上記の行をコメントにしてツールチェーンを再構築する必要があります。そうしないと、ツールチェーンが作成するバイナリにQmlデバッグが有効になりません。

関連する問題