HarmonyOS 開發快速入門:鴻蒙開發板上輸出 Hello World!
本文的重點:
如何編寫 Hello World 程序
如何編譯燒錄 Hello World 程序
如何調試 Hello World 程序
步驟:
添加 Hello World 源碼文件
編寫 Hello World 業務代碼
編寫編譯構建文件 BUILD.gn
調試 Hello World 程序
總結
步驟一:添加Hello World源碼文件
①新增 my_app 文件夾
在 ./applications/BearPi/BearPi-HM_Nano/sample 路徑下新建一個 my_app 目錄,用于存放業務源碼文件。
②新增 hello_world.c 文件
在 ./applications/BearPi/BearPi-HM_Nano/sample/my_app 路徑下新建一個 hello_world.c 文件,該文件為業務源碼文件。
③新增 BUILD.gn 文件
在 ./applications/BearPi/BearPi-HM_Nano/sample/my_app 路徑下新建一個 BUILD.gn 文件,該文件為業務源碼編譯腳本。
步驟二:編寫Hello World業務代碼
在 hello_world.c 中新建業務入口函數 HelloWorld,并實現業務邏輯。并在代碼最下方,使用 HarmonyOS啟動恢復模塊接口 APP_FEATURE_INIT() 啟動業務。(APP_FEATURE_INIT 定義在 ohos_init.h 文件中)
添加 HelloWorld 代碼:
#include#include"ohos_init.h" voidHello_World(void) { printf("HelloWorld! "); } APP_FEATURE_INIT(Hello_World);
步驟三:編寫業務編譯構建文件BUILD.gn
編寫用于將業務構建成靜態庫的 BUILD.gn 文件:
在 ./applications/BearPi/BearPi-HM/sample/my_app 下的 BUILD.gn 文件中添加如下代碼:
static_library("myapp"){ sources=[ "hello_world.c" ] include_dirs=[ "http://utils/native/lite/include" ] }
static_library 中指定業務模塊的編譯結果,為靜態庫文件 libmyapp.a,開發者根據實際情況完成填寫。
sources 中指定靜態庫 .a 所依賴的 .c 文件及其路徑,若路徑中包含"http://"則表示絕對路徑(此處為代碼根路徑),若不包含"http://"則表示相對路徑。
include_dirs 中指定 source 所需要依賴的 .h 文件路徑。
步驟四:編寫模塊編譯構建文件BUILD.gn
編寫模塊 BUILD.gn 文件,指定需參與構建的特性模塊。
在 ./applications/BearPi/BearPi-HM/sample 下的 BUILD.gn 文件中添加如下代碼:
import("http://build/lite/config/component/lite_component.gni") lite_component("app"){ features=[ "my_app:myapp", ] }my_app 是相對路徑,指向:
./applications/BearPi/BearPi-HM/sample/my_app/BUILD.gnmyapp 是目標,指向:
./applications/BearPi/BearPi-HM/sample/my_app/BUILD.gn中的static_library("myapp")
New task:輸出 10 十次:Hello Harmony!
代碼如下:
#include輸出如下圖:#include"ohos_init.h" voidHello_World(void) { printf("HelloWorld! "); } APP_FEATURE_INIT(Hello_World);
審核編輯:陳陳
-
開發板
+關注
關注
25文章
5121瀏覽量
98208 -
HarmonyOS
+關注
關注
79文章
1982瀏覽量
30579 -
鴻蒙開發板
+關注
關注
1文章
23瀏覽量
4541
原文標題:鴻蒙開發板上輸出Hello World
文章出處:【微信號:gh_834c4b3d87fe,微信公眾號:OpenHarmony技術社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
鴻蒙OpenHarmony【標準系統編寫“Hello World”程序】 (基于RK3568開發板)
![<b class='flag-5'>鴻蒙</b>OpenHarmony【標準系統編寫“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于RK3568<b class='flag-5'>開發板</b>)](https://file1.elecfans.com/web2/M00/C5/CD/wKgZomYCdwyAIFf5AAB_7E1pFms943.jpg)
鴻蒙OpenHarmony【輕量系統 編寫“Hello World”程序】 (基于Hi3861開發板)
![<b class='flag-5'>鴻蒙</b>OpenHarmony【輕量系統 編寫“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3861<b class='flag-5'>開發板</b>)](https://file1.elecfans.com/web2/M00/E6/F1/wKgaomZF3JuAZ8IMAAAxJKnBYwA272.png)
鴻蒙OpenHarmony【小型系統 編寫“Hello World”程序】 (基于Hi3516開發板)
![<b class='flag-5'>鴻蒙</b>OpenHarmony【小型系統 編寫“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3516<b class='flag-5'>開發板</b>)](https://file1.elecfans.com/web2/M00/E3/EA/wKgZomY92mCAOpDmAABBE-im69c216.png)
鴻蒙OpenHarmony【標準系統 編寫“Hello World”程序】(基于RK3568開發板)
![<b class='flag-5'>鴻蒙</b>OpenHarmony【標準系統 編寫“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】(基于RK3568<b class='flag-5'>開發板</b>)](https://file1.elecfans.com/web2/M00/E4/5A/wKgaomY8nl-ALH4oAAA3gQX5Lbg184.png)
如何在RK2206開發板上使用鴻蒙LiteOS-M內核接口進行編程開發
MICROCHIP MINUTES 4 - HELLO WORLD
MPSOC開發板教程之HELLO WORLD
![MPSOC<b class='flag-5'>開發板</b>教程之<b class='flag-5'>HELLO</b> <b class='flag-5'>WORLD</b>](https://file.elecfans.com/web2/M00/1C/24/pYYBAGGKQnWAWTzSAAC81vFMqKw572.png)
米爾科技HELLO WORLD主板介紹
![米爾科技<b class='flag-5'>HELLO</b> <b class='flag-5'>WORLD</b>主板介紹](https://file.elecfans.com/web1/M00/AA/BD/pIYBAF2peWiARp2tABNLT2AEVqA374.png)
基于米爾MPSOC開發板的hello world設計
鴻蒙OpenHarmony【輕量系統編寫“Hello World”程序】 (基于Hi3861開發板)
![<b class='flag-5'>鴻蒙</b>OpenHarmony【輕量系統編寫“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3861<b class='flag-5'>開發板</b>)](https://file1.elecfans.com/web2/M00/C5/D1/wKgZomYChGOAUaiiAADe1d8SeRY102.jpg)
鴻蒙OpenHarmony【小型系統編寫“Hello World”程序】 (基于Hi3516開發板)
![<b class='flag-5'>鴻蒙</b>OpenHarmony【小型系統編寫“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”程序】 (基于Hi3516<b class='flag-5'>開發板</b>)](https://file1.elecfans.com/web2/M00/C5/CD/wKgZomYCdwyAIFf5AAB_7E1pFms943.jpg)
評論