編寫“Hello World”程序
下方將展示如何在單板上運行第一個應(yīng)用程序,其中包括新建應(yīng)用程序、編譯、燒寫、運行等步驟,最終輸出“Hello World!”。
前提條件
已參考[創(chuàng)建工程并獲取源碼],創(chuàng)建Hi3516開發(fā)板的源碼工程。
鴻蒙開發(fā)指導文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
示例目錄
示例完整目錄如下:HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿
applications/sample/hello
│── BUILD.gn
└── src
└── helloworld.c
開發(fā)步驟
請在源碼目錄中通過以下步驟創(chuàng)建“Hello World”應(yīng)用程序。
新建目錄及源碼。
新建applications/sample/hello/src/helloworld.c目錄及文件,代碼如下所示,用戶可以自定義修改打印內(nèi)容(例如:修改OHOS為World)。當前應(yīng)用程序可支持標準C及C++的代碼開發(fā)。#include < stdio.h > int main(int argc, char **argv) { printf("nn"); printf("nttHello OHOS!n"); printf("nnn"); return 0; }
新建編譯組織文件。
新建applications/sample/hello/BUILD.gn文件,內(nèi)容如下所示:import("http://build/lite/config/component/lite_component.gni") lite_component("hello-OHOS") { features = [ ":helloworld" ] } executable("helloworld") { output_name = "helloworld" sources = [ "src/helloworld.c" ] }
添加新組件。
修改文件build/lite/components/applications.json,添加組件hello_world_app的配置,如下所示為applications.json文件片段,"##start##"和"##end##"之間為新增配置("##start##"和"##end##"僅用來標識位置,添加完配置后刪除這兩行):說明: 本章節(jié)操作是以O(shè)penHarmony-v3.1-Release版本為例進行操作的,該版本中,組件配置文件為build/lite/components/applications.json;若源碼版本大于等于OpenHarmony 3.2 Beta2時,組件配置文件為build/lite/components/communication.json。
{ "components": [ { "component": "camera_sample_communication", "description": "Communication related samples.", "optional": "true", "dirs": [ "applications/sample/camera/communication" ], "targets": [ "http://applications/sample/camera/communication:sample" ], "rom": "", "ram": "", "output": [], "adapted_kernel": [ "liteos_a" ], "features": [], "deps": { "components": [], "third_party": [] } }, ##start## { "component": "hello_world_app", "description": "hello world samples.", "optional": "true", "dirs": [ "applications/sample/hello" ], "targets": [ "http://applications/sample/hello:hello-OHOS" ], "rom": "", "ram": "", "output": [], "adapted_kernel": [ "liteos_a" ], "features": [], "deps": { "components": [], "third_party": [] } }, ##end## { "component": "camera_sample_app", "description": "Camera related samples.", "optional": "true", "dirs": [ "applications/sample/camera/launcher", "applications/sample/camera/cameraApp", "applications/sample/camera/setting", "applications/sample/camera/gallery", "applications/sample/camera/media" ],
修改單板配置文件。
修改文件vendor/hisilicon/hispark_taurus/config.json,新增hello_world_app組件的條目,如下所示代碼片段為applications子系統(tǒng)配置,"##start##"和"##end##"之間為新增條目("##start##"和"##end##"僅用來標識位置,添加完配置后刪除這兩行):{ "subsystem": "applications", "components": [ { "component": "camera_sample_app", "features":[] }, { "component": "camera_sample_ai", "features":[] }, ##start## { "component": "hello_world_app", "features":[] }, ##end## { "component": "camera_screensaver_app", "features":[] } ] },
審核編輯 黃宇
-
開發(fā)板
+關(guān)注
關(guān)注
25文章
5129瀏覽量
98325 -
鴻蒙
+關(guān)注
關(guān)注
57文章
2395瀏覽量
43091 -
HarmonyOS
+關(guān)注
關(guān)注
79文章
1983瀏覽量
30630 -
OpenHarmony
+關(guān)注
關(guān)注
25文章
3753瀏覽量
16661
發(fā)布評論請先 登錄
相關(guān)推薦
鴻蒙OpenHarmony【標準系統(tǒng)編寫“Hello World”程序】 (基于RK3568開發(fā)板)
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【標準<b class='flag-5'>系統(tǒng)編寫</b>“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”<b class='flag-5'>程序</b>】 (基于RK3568<b class='flag-5'>開發(fā)板</b>)](https://file1.elecfans.com/web2/M00/C5/CD/wKgZomYCdwyAIFf5AAB_7E1pFms943.jpg)
鴻蒙OpenHarmony【輕量系統(tǒng) 編寫“Hello World”程序】 (基于Hi3861開發(fā)板)
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【輕量<b class='flag-5'>系統(tǒng)</b> <b class='flag-5'>編寫</b>“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”<b class='flag-5'>程序</b>】 (基于<b class='flag-5'>Hi</b>3861<b class='flag-5'>開發(fā)板</b>)](https://file1.elecfans.com/web2/M00/E6/F1/wKgaomZF3JuAZ8IMAAAxJKnBYwA272.png)
鴻蒙OpenHarmony【小型系統(tǒng) 編寫“Hello World”程序】 (基于Hi3516開發(fā)板)
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【<b class='flag-5'>小型</b><b class='flag-5'>系統(tǒng)</b> <b class='flag-5'>編寫</b>“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”<b class='flag-5'>程序</b>】 (基于<b class='flag-5'>Hi3516</b><b class='flag-5'>開發(fā)板</b>)](https://file1.elecfans.com/web2/M00/E3/EA/wKgZomY92mCAOpDmAABBE-im69c216.png)
鴻蒙OpenHarmony【小型系統(tǒng) 燒錄】(基于Hi3516開發(fā)板)
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【<b class='flag-5'>小型</b><b class='flag-5'>系統(tǒng)</b> 燒錄】(基于<b class='flag-5'>Hi3516</b><b class='flag-5'>開發(fā)板</b>)](https://file1.elecfans.com/web2/M00/DF/10/wKgaomYt8OyAYdysAABTue69ngM008.jpg)
鴻蒙OpenHarmony南向:【Hi3516標準系統(tǒng)入門(命令行方式)】
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>南向:【<b class='flag-5'>Hi3516</b>標準<b class='flag-5'>系統(tǒng)</b>入門(命令行方式)】](https://file1.elecfans.com/web2/M00/E1/C7/wKgZomY52MmAS66XAAADCp1_zEY399.jpg)
OpenHarmony2.0 一站式編譯燒錄Hi3516(3518))小型系統(tǒng)
OpenHarmony2.0 Hi3516系列資料下載合集(源碼編譯+燒錄)
OpenHarmony3.0上編譯C控制Hi3516開發(fā)板的LED閃爍
![<b class='flag-5'>OpenHarmony</b>3.0上編譯C控制<b class='flag-5'>Hi3516</b><b class='flag-5'>開發(fā)板</b>的LED閃爍](https://file.elecfans.com/web2/M00/16/43/poYBAGFSdHqAdrEfAAAG9H2ShCU055.png)
基于Hi3516開發(fā)板的智能貓眼設(shè)計
如何在鴻蒙開發(fā)板上輸出Hello World
OpenHarmony鴻蒙南向開發(fā)案例:【智能貓眼(基于3516開發(fā)板)】
![<b class='flag-5'>OpenHarmony</b><b class='flag-5'>鴻蒙</b>南向<b class='flag-5'>開發(fā)</b>案例:【智能貓眼(基于<b class='flag-5'>3516</b><b class='flag-5'>開發(fā)板</b>)】](https://file1.elecfans.com/web2/M00/D1/4F/wKgaomYidIOAb5t-AASi2dMK2KA073.jpg)
鴻蒙OpenHarmony【輕量系統(tǒng)編寫“Hello World”程序】 (基于Hi3861開發(fā)板)
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【輕量<b class='flag-5'>系統(tǒng)編寫</b>“<b class='flag-5'>Hello</b> <b class='flag-5'>World</b>”<b class='flag-5'>程序</b>】 (基于<b class='flag-5'>Hi</b>3861<b class='flag-5'>開發(fā)板</b>)](https://file1.elecfans.com/web2/M00/C5/D1/wKgZomYChGOAUaiiAADe1d8SeRY102.jpg)
鴻蒙OpenHarmony【小型系統(tǒng)編譯】 (基于Hi3516開發(fā)板)
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【<b class='flag-5'>小型</b><b class='flag-5'>系統(tǒng)編</b>譯】 (基于<b class='flag-5'>Hi3516</b><b class='flag-5'>開發(fā)板</b>)](https://file1.elecfans.com/web2/M00/C9/99/wKgaomYeL0WAZFDHAAACSiKnE8w930.jpg)
鴻蒙OpenHarmony【小型系統(tǒng)運行案例】 (基于Hi3516開發(fā)板)
![<b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>【<b class='flag-5'>小型</b><b class='flag-5'>系統(tǒng)</b>運行案例】 (基于<b class='flag-5'>Hi3516</b><b class='flag-5'>開發(fā)板</b>)](https://file1.elecfans.com/web2/M00/C9/99/wKgaomYeL0WAZFDHAAACSiKnE8w930.jpg)
評論