0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OpenHarmony C++公共基础类库应用案例:HelloWorld

福州市凌睿智捷电子有限公司 2023-11-23 08:22 次阅读

1、程序简介

该程序是基于OpenHarmonyC++公共基础类库的简单案例:HelloWorld。

该应用案例已在OpenHarmony凌蒙派-RK3568开发板(即OpenHarmony-v3.2.1-release)运行正常,详细说明及案例源代码可参考:https://gitee.com/Lockzhiner-Electronics/lockzhiner-rk3568-openharmony/tree/master/samples/a21_utils_helloworld

2、程序解析

2.1、创建编译引导

在//vendor/lockzhiner/rk3568/ohos.build添加编译模块系统名称。

{ "parts": { "product_rk3568": { "module_list": [ "//vendor/lockzhiner/rk3568/default_app_config:default_app_config", "//vendor/lockzhiner/rk3568/image_conf:custom_image_conf", "//vendor/lockzhiner/rk3568/preinstall-config:preinstall-config", "//vendor/lockzhiner/rk3568/resourceschedule:resourceschedule", "//vendor/lockzhiner/rk3568/etc:product_etc_conf", "//vendor/lockzhiner/rk3568/samples:samples" ] } }, "subsystem": "product_lockzhiner"}

注意:"//vendor/lockzhiner/rk3568/samples:samples"表示将vendor/lockzhiner/rk3568/samples目录添加到编译中。

在//vendor/lockzhiner/rk3568/samples/BUILD.gn文件添加一行编译引导语句。

import("//build/ohos.gni")

group("samples") { deps = [ "a21_utils_helloworld:utilshelloworld", ]}

"//samples/a21_utils_helloworld:utilshelloworld",该行语句表示引入//a21_utils_helloworld 参与编译。

2.2、创建编译项目

创建//samples/a21_utils_helloworld 目录,并添加如下文件:

a21_utils_helloworld├── utils_helloworld_sample.cpp # .cpp源代码├── BUILD.gn # GN文件

2.3、创建BUILD.gn

编辑BUILD.gn文件。

import("//build/ohos.gni")ohos_executable("utils_helloworld") { sources = [ "src/utils_helloworld_sample.cpp" ] # 参与编译的源代码文件 include_dirs = [ "//commonlibrary/c_utils/base:utils", "//third_party/googletest:gtest_main" ] part_name = "product_rk3568" # 模块名称 install_enable = true # 安装到系统中}

注意:

(1)BUILD.gn中所有的TAB键必须转化为空格,否则会报错。如果自己不知道如何规范化,可以:

# 安装gn工具sudo apt-get install ninja-buildsudo apt install generate-ninjas# 规范化BUILD.gngn format BUILD.gn

(2)可执行程序的名称

ohos_executable("utilshelloworld")中的utilshelloworld为可执行程序的名称,必须与//samples/BUILD.gn文件的内容一致。

2.4、创建源代码

utils_helloworld_sample.cpp具体代码如下:

#include

using namespace std;

int main(int argc, char *argv[]){ cout << "Hello, World!" << endl; return 0;}

3、运行程序

系统启动后,运行命令:

utils_helloworld

4、运行结果

运行结果:

# utilshelloworldHello, World!#


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序
    +关注

    关注

    116

    文章

    3775

    浏览量

    80836
  • 开发板
    +关注

    关注

    25

    文章

    4943

    浏览量

    97178
  • OpenHarmony
    +关注

    关注

    25

    文章

    3658

    浏览量

    16132
收藏 人收藏

    评论

    相关推荐

    ostream在c++中的用法

    ostream 是 C++ 标准中一个非常重要的,它位于 头文件中(实际上,更常见的是通过包含 头文件来间接包含 ,因为 包含了 和 )。 ostream 及其派生
    的头像 发表于 09-20 15:11 502次阅读

    基于OpenHarmony标准系统的C++公共基础案例:rwlock

    1、程序简介该程序是基于OpenHarmonyC++公共基础的读写锁:rwlock。本案例主要完成如下工作:创建3个读线程,每个读线程
    的头像 发表于 08-30 12:42 321次阅读
    基于<b class='flag-5'>OpenHarmony</b>标准系统的<b class='flag-5'>C++</b><b class='flag-5'>公共</b>基础<b class='flag-5'>类</b><b class='flag-5'>库</b>案例:rwlock

    基于OpenHarmony标准系统的C++公共基础案例:SafeMap

    1、程序简介该程序是基于OpenHarmonyC++公共基础的安全关联容器:SafeMap。Ope
    的头像 发表于 08-30 12:42 282次阅读
    基于<b class='flag-5'>OpenHarmony</b>标准系统的<b class='flag-5'>C++</b><b class='flag-5'>公共</b>基础<b class='flag-5'>类</b><b class='flag-5'>库</b>案例:SafeMap

    基于OpenHarmony标准系统的C++公共基础案例:SafeQueue

    1、程序简介该程序是基于OpenHarmonyC++公共基础的线程安全队列:SafeQueue。线程安全队列,是在dequeue的基础
    的头像 发表于 08-30 12:41 236次阅读
    基于<b class='flag-5'>OpenHarmony</b>标准系统的<b class='flag-5'>C++</b><b class='flag-5'>公共</b>基础<b class='flag-5'>类</b><b class='flag-5'>库</b>案例:SafeQueue

    基于OpenHarmony标准系统的C++公共基础案例:SafeStack

    1、程序简介该程序是基于OpenHarmonyC++公共基础的线程安全队列:SafeQueue。线程安全队列,是在dequeue的基础
    的头像 发表于 08-30 12:41 282次阅读
    基于<b class='flag-5'>OpenHarmony</b>标准系统的<b class='flag-5'>C++</b><b class='flag-5'>公共</b>基础<b class='flag-5'>类</b><b class='flag-5'>库</b>案例:SafeStack

    基于OpenHarmony标准系统的C++公共基础案例:SafeBlockQueue

    1、程序简介该程序是基于OpenHarmonyC++公共基础的读写锁:SafeBlockQueue。线程安全阻塞队列SafeBlock
    的头像 发表于 08-30 12:41 261次阅读
    基于<b class='flag-5'>OpenHarmony</b>标准系统的<b class='flag-5'>C++</b><b class='flag-5'>公共</b>基础<b class='flag-5'>类</b><b class='flag-5'>库</b>案例:SafeBlockQueue

    基于OpenHarmony标准系统的C++公共基础案例:SafeBlockQueue

    1、程序简介 该程序是基于OpenHarmonyC++公共基础的读写锁:SafeBlockQueue。 线程安全阻塞队列SafeBlo
    发表于 08-22 10:52

    基于OpenHarmony标准系统的C++公共基础案例:SafeStack

    1、程序简介 该程序是基于OpenHarmonyC++公共基础的线程安全队列:SafeQueue。 线程安全队列,是在dequeue的
    发表于 08-21 14:51

    基于OpenHarmony标准系统的C++公共基础案例:SafeQueue

    1、程序简介 该程序是基于OpenHarmonyC++公共基础的线程安全队列:SafeQueue。 线程安全队列,是在dequeue的
    发表于 08-21 10:56

    基于OpenHarmony标准系统的C++公共基础案例:SafeMap

    1、程序简介 该程序是基于OpenHarmonyC++公共基础的安全关联容器:SafeMap。 O
    发表于 08-20 12:00

    基于OpenHarmony标准系统的C++公共基础案例:rwlock

    1、程序简介 该程序是基于OpenHarmonyC++公共基础的读写锁:rwlock。 本案例主要完成如下工作: 创建3个读线程,每个
    发表于 08-20 09:37

    基于OpenHarmony标准系统的C++公共基础案例:Semaphore

    1、程序简介 该程序是基于OpenHarmony标准系统的C++公共基础的线程处理:Sempahore。 本案例完成如下工作: (1)无
    发表于 08-14 16:38

    OpenHarmony标准系统C++公共基础案例:HelloWorld

    1、程序简介该程序是基于凌蒙派OpenHarmony-v3.2.1标准系统C++公共基础的简单案例:
    的头像 发表于 08-13 08:23 460次阅读
    <b class='flag-5'>OpenHarmony</b>标准系统<b class='flag-5'>C++</b><b class='flag-5'>公共</b>基础<b class='flag-5'>类</b><b class='flag-5'>库</b>案例:<b class='flag-5'>HelloWorld</b>

    基于OpenHarmony标准系统的C++公共基础案例:ThreadPoll

    1、程序简介 该程序是基于OpenHarmony标准系统的C++公共基础的线程池处理:ThreadPoll。 本案例完成如下工作: 创建
    发表于 08-12 11:42

    OpenHarmony 之 NAPI 框架介绍

    NAPI 是什么 NAPI 的概念源自 Nodejs,为了实现 javascript 脚本与 C++ 之间的相互调用,Nodejs 对 V8 引擎的 api 做了一层封装,称为 NAPI。可以在
    的头像 发表于 02-01 17:34 645次阅读
    <b class='flag-5'>OpenHarmony</b> 之 NAPI 框架介绍