2017-06-13 3 views
0

Yoctoを使用する私は自分のLinuxイメージとそのルートファイルシステムを、qtとopencvの両方のライブラリを持つように生成することができます。Yocto Linuxイメージのopencvとqtでプログラムをコンパイルするには?

poky-eglibc-i686-meta-toolchain-qt5-cortexa15hf-vfp-neon-toolchain-1.6.1.sh SDKがあるQTプログラムをコンパイルするために。

OpenCvをコンパイルするには、別のSDKが必要です。poky-eglibc-i686-core-image-weston-cortexa15hf-vfp-neon-toolchain-1.6.1.sh。

QT SDKには、OpenCvとQTの両方でプログラムをコンパイルするのが難しいopencv用のライブラリとヘッダーファイルがありません。

別のSDKを使用してQtプログラムとopencvプログラムを正常にコンパイルできました。

QTとOpencvの両方でプログラムをコンパイルできるSDKはありますか? または、どのように生成する必要がありますか?

答えて

1

自分の好みは、イメージベースのSDK、つまりイメージに一致するSDKを作成することです。

bitbake <your-image> -c populate_sdk 

イメージにQt5アプリケーションとOpenCVが含まれている場合、それらのイメージは両方とも自動的に新しいSDKにインストールされます。あなたのイメージレシピに次の行を持っている必要があります。

inherit populate_sdk_qt5 

代替は例えば、独自の層にmeta-toolchain-qt5をコピーして名前を変更することで、独自のSDK-レシピを作成することです。その後、追加します。あなたのジェネリックQt5 SDKにopencvを追加する必要があります

TOOLCHAIN_TARGET_TASK_append = " opencv" 

を。

この場合も、イメージベースのアプローチを使用することをお勧めします。

+1

イメージベースのアプローチも使用しています。私の画像には 'populate_sdk_qt5'も継承されています。これにより、いくつかのnativesdk qtツールが取得され、 'qt.conf' sdkファイルが作成されます。これらのことがどうにかして依存関係のために引き込まれたのかどうかはわかりません。 –

+0

@TomasNovotnyご返信ありがとうございます。私は同じことがpopulate_sdk_qt5を継承し、そのビットベイクの後に -c populate_sdkを継承しました。出来た。 – sumit

関連する問題