yasuda0108
2021年12月23日 16時37分
①Qtのビルド方法について
コンテナ上でリンク先ページを参考にQtのビルドを試みましたが、添付資料の通りエラーとなり、ビルドの実行に失敗しております。
ビルド可能となる方法や現状の問題点についてご教示願います。
https://armadillo.atmark-techno.com/index.php/blog/53/3913
試みた流れとしましては、以下の通りになります。
1. 製品マニュアル9-10で使用した「demo-app」コンテナを起動
※デモアプリ動確済み
2. USBメモリを接続し、/mntから/homeへQtソースコードをコピー
3. リンク先ページを参考にビルドを実施←失敗
② Qtクロスビルドについて
ATDE9でArmadillo-G4用にビルドし実行する方法について、
大まかな流れは下記リンク記載の内容を参考にできると思われますが、
本ボード用に対応が必要な箇所がありましたらお教え頂ければ幸いです。
https://armadillo.atmark-techno.com/howto/armadillo-440-qt-2
ファイル | ファイルの説明 |
---|---|
Qtビルドエラー.txt |
コメント
yasuda0108
ご回答ありがとうございました。
「①Qtビルド方法について」にてご教示いただいた通り、ビルド用と実行用のコンテナで動作確認し、無事動作しました。
追加で質問がございます
Qtプログラム動作確認済みの実行用コンテナのイメージを保存し、そのイメージから新たなコンテナを作成したのですが、
新たなコンテナ内でQtプログラムを実行したところ、下記のようなエラ-が発生しました。
root@5fc197e0c1ea:/home/2dpainting# export QT_QPA_PLATFORM=linuxfb root@5fc197e0c1ea:/home/2dpainting# ./2dpainting Unable to figure out framebuffer device. Specify it manually. linuxfb: Failed to initialize screen no screens available, assuming 24-bit color Cannot create window: no screens available Aborted
こちらのエラ-につきまして、対策等ご教示いただけますでしょうか。
at_makoto.sato
yasuda0108
at_akihito.irie
2021年12月24日 18時41分
入江です。
Armadillo上でビルドするのであれば、追加でパッケージが必要ですのでコン テナ内で以下のコマンドを実行してからビルドをお試しください。
ちなみに、ホストビルドで開発を行う場合は、最終的な運用向けコンテナイメー ジに開発用のパッケージが入っているとコンテナイメージサイズが大きくなる ので、開発用コンテナと実行用コンテナに分けて使用することをお勧めします。
実行用コンテナでは、上記コマンドでインストールしたパッケージのうち、末 尾に-devが付いているものとbuild-essentialが必要ないので、それ以外のパッ ケージをインストールしておけば、動作環境としては十分かと思います。
こちらについても、追加でパッケージが必要ですので、以下のコマンドを実行してインストールします。
QtCreatorを起動し、画面上部の[ツール]->[オプション]を開き、[Kits]の[Qtバージョン]のタブを開きます。
以下の画像のように、qmakeのパスを変更するために[参照]をクリックします。
qmakeのパスは、
/usr/lib/aarch64-linux-gnu/qt5/bin/qmake
に設定してください。[OK]で設定を保存します。
さらにKitsの設定から、デスクトップ(既定)をクリックし以下の画像のように、 C、C++ともにCompilerを「GCC(C[またはC++], arm 64bit in /usr/bin)」 に変更して[OK]をクリックします。
プロジェクトのビルド時には今回設定したKitsを選択してビルドすることで、 aarch64向けのバイナリを作成できます。