上次我们提到了如何从零开始配置编译环境,其实在小熊派的官方demo资料里,也已经把这些内容说得很详细了。
下面,我们开始尝试使用编译好的环境,对小熊派的开发板进行编译。
开学第一课,当然还是熟悉的Hello World! & Blink了。
一、首先,需要从小熊派官方仓库获取代码
git config --global user.name "yourname"
git config --global user.email“your-email-address"
git clone https://gitee.com/bearpi/bearpi-hm_nano.git -b master
二、拉取完仓库源码文件,开始写业务文件
2.1在./applications/BearPi/BearPi-HM_Nano/sample路径下新建一个my_app目录(名称随意,但应注意避免使用中文目录和空格。Linux下很多编译链是不支持中文路径和包含空格的路径的),用于存放业务源码文件。
2.2在该目录下新建hello_world.c文件,我们的世界从这里开始新建。
#include <stdio.h>
#include "ohos_init.h"
void HelloWorld(void)
{
printf("Hello world!\r\n");
}
APP_FEATURE_INIT(HelloWorld);
2.3在该目录下新建BUILD.gn文件,该文件作为源码编译的脚本文件。
static_library("myapp")
{
sources=["hello_world.c"]
include_dirs=["//utils/native/lite/include"]
}
2.4在./applications/BearPi/BearPi-HM_Nano/sample目录下修改BUILD.gn文件,该文件用来指定参与编译构建的特性模块
import("//build/lite/config/component/lite_component.gni")
lite_component("app") {
features = [
#"A1_kernal_thread:thread_example",
#"A2_kernel_timer:timer_example",
#"A3_kernel_event:event_example",
#"A4_kernel_mutex:mutex_example",
#"A5_kernel_semaphore:semaphore_example",
#"A6_kernel_message:message_example",
#"B1_basic_led_blink:led_example",
#"B2_basic_button:button_example",
#"B3_basic_pwm_led:pwm_example",
#"B4_basic_adc:adc_example",
#"B5_basic_i2c_nfc:i2c_example",
#"B6_basic_uart:uart_example",
#"C1_e53_sf1_mq2:e53_sf1_example",
#"C2_e53_ia1_temp_humi_pls:e53_ia1_example",
#"C3_e53_sc1_pls:e53_sc1_example",
#"C4_e53_sc2_axis:e53_sc2_example",
#"C5_e53_is1_infrared:e53_is1_example",
#"D1_iot_wifi_ap:wifi_ap",
#"D2_iot_wifi_sta_connect:wifi_sta_connect",
#"D3_iot_udp_client:udp_client",
#"D4_iot_tcp_server:tcp_server",
#"D5_iot_mqtt:iot_mqtt",
#"D6_iot_cloud_oc:oc_mqtt",
#"D7_iot_cloud_onenet:onenet_mqtt",
#"D8_iot_cloud_oc_smoke:cloud_oc_smoke"
#"D9_iot_cloud_oc_light:cloud_oc_light"
#"D10_iot_cloud_oc_manhole_cover:cloud_oc_manhole_cover"
#"D11_iot_cloud_oc_infrared:cloud_oc_infrared"
#"D12_iot_cloud_oc_agriculture:cloud_oc_agriculture"
"my_app:myapp",
]
}
2.5 输入编译命令
python build.py BearPi-HM_Nano
稍等一会儿,就可以看见
< ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >
BUILD SUCCESS
< ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >
字样,此时就表示编译完成了
本帖最后由 未见 于 2021-6-20 16:44 编辑