Hongmeng APPのコンパイル

第4章他のアプリをコンパイルする

1.1ソースコードを入手する

これらのプログラムは次のとおりです
ここに画像の説明を挿入
。GITEEのアドレスに配置します。https://gitee.com/weidongshan/openharmony_for_imx6ull
便宜上、Ubuntuで次のコマンドを実行して直接ダウンロードできます。

cd  /home/book
git  clone  https://gitee.com/weidongshan/openharmony_for_imx6ull.git

これにより、次のディレクトリが取得されます:/ home / book / openharmony_for_imx6ull

1.2プログラムをコンパイルする

/ home / book / openharmony_for_imx6ullディレクトリがダウンロードされていると仮定して、次のコマンドを実行してコンパイルします。

cd  /home/book/openharmony_for_imx6ull/apps
for i in $(ls); do cd $i; make; cd -; done

以下の上記のコマンドについて説明します。

これらのディレクトリは$(ls)にリストされています:digital_photo_frame fb_test freetype hello。

各項目「$ i」について、次のコマンドを実行(実行)します:cd $ i; make; cd-。入力するだけ

ディレクトリ、makeコマンドを実行して上位ディレクトリに戻ります。
もちろん、これらのサブディレクトリを自分で入力して、makeコマンドを手動で実行することもできます。

注:
(1)freetypeとdigital_photo_frameの2つのプログラムは、以前にコンパイルしたhi3518ev300ライブラリファイルを使用する必要があります。
(2)最初に「python build.py ipcamera_hi3518ev300 -b debug」を実行する必要があります。
(3)Hongmengソースコードのパスが/ home / book / openharmonyでない場合は、Makefileを変更する必要があります。パスを次のように変更します。

ここに画像の説明を挿入

1.3プログラムをrootfsにコピーする

これらの2つのプログラムは、他の動的ライブラリーhelloとfb_testには依存していませんが、freetypeプログラムはlibfreetype.soに依存しており、digital_photo_frameプログラムはlibfreetype.soとlibjpeg.soに依存しています。

これらの動的ライブラリはどこにありますか?以前は、「1.2.4 Compile Official Version」で「python build.py ipcamera_hi3518ev300 -b debug」が実行され、hi3518ev300開発ボード用にこのライブラリファイルが生成されていました。hi3518ev300とimx6ullはcortex A7アーキテクチャに属しているため、imx6ullはこれらのライブラリを使用できます。将来的にimx6ullのコードを完成させた後は、そのような仕掛けは必要ありません。

次のコマンドを実行してプログラムをコピーします。

cd  /home/book/openharmony_for_imx6ull/apps
# 拷贝应用程序
cp hello/hello  /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/bin
cp fb_test/fb_test  /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/bin
cp freetype/show_line /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/bin
cp digital_photo_frame/digitpic /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/bin
# 拷贝字体文件
cp freetype/simsun.ttc  /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/
# 拷贝数码相框的图标
cp digital_photo_frame/rootfs /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/  -rf
# 拷贝库文件
cp /home/book/openharmony/out/ipcamera_hi3518ev300/libs/usr/libfreetype.so /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/usr/lib/
cp /home/book/openharmony/out/ipcamera_hi3518ev300/libs/usr/libjpeg.so /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/usr/lib/

1.4 rootfs.jffs2を作成する

次のコマンドを実行します。

cd  /home/book/openharmony/kernel/liteos_a/out/imx6ull/
mkfs.jffs2  -s 0x10000 -e 0x10000 -d rootfs -o rootfs.jffs2

取得したrootfs.jffs2を書き込みツールのファイルディレクトリに配置すると、書き込みツールで起動できます。
ここに画像の説明を挿入

1.5アプリを実行

これらのアプリは直接実行できます。パラメータが必要な場合は、使用を促すメッセージが表示されます。
注:「./bin/hello」などの相対パスを使用する必要があります。「/ bin / hello」などの絶対パスは使用できません。

1.5.1 fb_test

次のコマンドを実行します。

./bin/fb_test /dev/fb0

効果は次のとおりです。
ここに画像の説明を挿入

1.5.2 show_line

次のコマンドを実行します。

./bin/show_line /simsun.ttc 230 230 100

効果は次のとおりです。
ここに画像の説明を挿入

1.5.3ディジットピック

次のコマンドを実行します。

./bin/digitpic /simsun.ttc

画面上のアイコンをクリックすると、効果は次のようになります。
ここに画像の説明を挿入
フルテキストダウンロード
テクノロジー交換グループ(
Hongmeng 開発/ Linux /埋め込み/ドライバー/データダウンロード)QQグループ:869222007

おすすめ

転載: blog.csdn.net/thisway_diy/article/details/108667012