1、程序簡(jiǎn)介
該程序是基于凌蒙派OpenHarmony-v3.2.1標(biāo)準(zhǔn)系統(tǒng)C++公共基礎(chǔ)類(lèi)庫(kù)的簡(jiǎn)單案例:HelloWorld。
主要講解C++公共基礎(chǔ)類(lèi)庫(kù)案例如何搭建和編譯。
2、程序解析
2.1、創(chuàng)建編譯引導(dǎo)
在//vendor/lockzhiner/rk3568/ohos.build添加編譯模塊系統(tǒng)名稱(chēng)。
{ "parts": { "product_rk3568": { "module_list": [ "http://vendor/lockzhiner/rk3568/default_app_config:default_app_config", "http://vendor/lockzhiner/rk3568/image_conf:custom_image_conf", "http://vendor/lockzhiner/rk3568/preinstall-config:preinstall-config", "http://vendor/lockzhiner/rk3568/resourceschedule:resourceschedule", "http://vendor/lockzhiner/rk3568/etc:product_etc_conf", "http://vendor/lockzhiner/rk3568/samples:samples" ] } }, "subsystem": "product_lockzhiner"}
注意:"http://vendor/lockzhiner/rk3568/samples:samples"表示將vendor/lockzhiner/rk3568/samples目錄添加到編譯中。
在//vendor/lockzhiner/rk3568/samples/BUILD.gn文件添加一行編譯引導(dǎo)語(yǔ)句。
import("http://build/ohos.gni")
group("samples") { deps = [ "a21_utils_helloworld:utilshelloworld", ]}
"http://samples/a21_utils_helloworld:utilshelloworld",該行語(yǔ)句表示引入//a21_utils_helloworld 參與編譯。
2.2、創(chuàng)建編譯項(xiàng)目
創(chuàng)建//samples/a21_utils_helloworld 目錄,并添加如下文件:
a21_utils_helloworld├── utils_helloworld_sample.cpp # .cpp源代碼├── BUILD.gn
2.3、創(chuàng)建BUILD.gn
編輯BUILD.gn文件。
import("http://build/ohos.gni")ohos_executable("utilshelloworld") { sources = [ "src/utils_helloworld_sample.cpp" ] # 參與編譯的源代碼文件 include_dirs = [ "http://commonlibrary/c_utils/base:utils", "http://third_party/googletest:gtest_main" ] part_name = "product_rk3568" # 模塊名稱(chēng) install_enable = true # 安裝到系統(tǒng)中}
注意:
(1)BUILD.gn中所有的TAB鍵必須轉(zhuǎn)化為空格,否則會(huì)報(bào)錯(cuò)。如果自己不知道如何規(guī)范化,可以:
# 安裝gn工具sudo apt-get install ninja-buildsudo apt install generate-ninjas# 規(guī)范化BUILD.gngn format BUILD.gn
(2)可執(zhí)行程序的名稱(chēng)
ohos_executable("utilshelloworld")中的utilshelloworld為可執(zhí)行程序的名稱(chēng),必須與//samples/BUILD.gn文件的內(nèi)容一致。
2.4、創(chuàng)建源代碼
utils_helloworld_sample.cpp具體代碼如下:
#include
using namespace std;
int main(int argc, char *argv[]){ cout << "Hello, World!" << endl; return 0;}
3、運(yùn)行程序
系統(tǒng)啟動(dòng)后,運(yùn)行命令:
utilshelloworld
4、運(yùn)行結(jié)果
運(yùn)行結(jié)果:
# utilshelloworldHello, World!#
-
源代碼
+關(guān)注
關(guān)注
96文章
2945瀏覽量
66730 -
系統(tǒng)
+關(guān)注
關(guān)注
1文章
1014瀏覽量
21332 -
OpenHarmony
+關(guān)注
關(guān)注
25文章
3713瀏覽量
16252
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論