harmony(鸿蒙)Writing a Hello World Program
Writing a Hello World Program
The following exemplifies how to run the first program on the development board. The created program outputs the message “Hello World!” .
Example Directory
The complete code directory is as follows:
applications/sample/hello
│ │── BUILD.gn
│ │── include
│ │ └── helloworld.h
│ │── src
│ │ └── helloworld.c
│ └── bundle.json
build
└── subsystem_config.json
vendor/hihope
└── rk3568
└── config.json
How to Develop
Perform the steps below in the source code directory:
- Create a directory and write the service code.
Create the applications/sample/hello/src/helloworld.c directory and file whose code is shown in the following example. You can customize the content to be printed. For example, you can change World to OH. Declare the string printing function HelloPrint in the helloworld.h file. You can use either C or C++ to develop a program.
#include <stdio.h>
#include "helloworld.h"
int main(int argc, char **argv)
{
HelloPrint();
return 0;
}
void HelloPrint()
{
printf("\n\n");
printf("\n\t\tHello World!\n");
printf("\n\n");
}
Add the header file applications/sample/hello/include/helloworld.h. The sample code is as follows:
#ifndef HELLOWORLD_H
#define HELLOWORLD_H
#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif
void HelloPrint();
#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif
#endif // HELLOWORLD_H
Create a build file.
- Create the applications/sample/hello/BUILD.gn file. The file content is as follows:
import("//build/ohos.gni") # Import the build template. ohos_executable("helloworld") {# Executable module. sources = [ # Source code of the module. "src/helloworld.c" ] include_dirs = [ # Directory of header file on which the module depends. "include" ] cflags = [] cflags_c = [] cflags_cc = [] ldflags = [] configs = [] deps =[] # Internal dependencies of a component. part_name = "hello" # Component name. This parameter is mandatory. install_enable = true # Whether to install the software by default. This parameter is optional. By default, the software is not installed. }
- Create the applications/sample/hello/bundle.json file and add the description of the sample component. The content is as follows:
{ "name": "@ohos/hello", "description": "Hello world example.", "version": "3.1", "license": "Apache License 2.0", "publishAs": "code-segment", "segment": { "destPath": "applications/sample/hello" }, "dirs": {}, "scripts": {}, "component": { "name": "hello", "subsystem": "sample", "syscap": [], "features": [], "adapted_system_type": [ "mini", "small", "standard" ], "rom": "10KB", "ram": "10KB", "deps": { "components": [], "third_party": [] }, "build": { "sub_component": [ "//applications/sample/hello:helloworld" ], "inner_kits": [], "test": [] } } }
The bundle.json file consists of two parts. The first part describes the information about the subsystem to which the component belongs, and the second part defines the component building configuration. When adding a part, you need to specify the sub_component contained in the part. If there are interfaces provided for other components, describe them in inner_kits. If there are test cases, describe them in test.
Modify the subsystem configuration file.
Add the configuration of the new subsystem to the build/subsystem_config.json file.
"sample": {
"path": "applications/sample/hello",
"name": "sample"
},
Modify the product configuration file.
In the vendor\hihope\rk3568\config.json file, add the hello part after the existing part.
"usb:usb_manager_native":{},
"applications:prebuilt_hap":{},
"sample:hello":{},
"wpa_supplicant-2.9:wpa_supplicant-2.9":{},
你可能感兴趣的鸿蒙文章
harmony(鸿蒙)Overall Description of Compilation Form Factors
harmony(鸿蒙)Importing a Source Code Project
harmony(鸿蒙)Setting Up the Windows+Ubuntu Hybrid Development Environment
harmony(鸿蒙)Introduction to the Hi3516 Development Board
harmony(鸿蒙)Introduction to the Hi3861 Development Board
harmony(鸿蒙)Mini and Small System Overview
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦