bitbake使用——RZMPU工业控制教程连载(61)

瑞萨MCU小百科 2025-03-03 12:00


14.5.2 开发第一个应用程序

1

安装工具链

对于需要在不同的HOST主机上针对于G2L RemiPI进行应用开发,我们需要手动安装上一章节生成的工具链程序,才可以进行后续的开发操作。


首先我们将poky-glibc-x86_64-myir-image-full-aarch64-myir-remi-1g-toolchain-3.1.20.sh工具链拷贝至ubuntu虚拟机家目录下,拷贝完成后,直接执行即可开始安装,参考步骤如下。

左右滑动查看完整内容

ubuntu@ubuntu2004:~$ ls poky-glibc-x86_64-myir-image-full-aarch64-myir-remi-1g-toolchain-3.1.20.sh -l-rwxr-xr-x 1 ubuntu ubuntu 1967617427 May 9 05:23 poky-glibc-x86_64-myir-image-full-aarch64-myir-remi-1g-toolchain-3.1.20.shubuntu@ubuntu2004:~$ ./poky-glibc-x86_64-myir-image-full-aarch64-myir-remi-1g-toolchain-3.1.20.sh Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.$ . /opt/remi-sdk/environment-setup-aarch64-poky-linux$ . /opt/remi-sdk/environment-setup-armv7vet2hf-neon-vfpv4-pokymllib32-linux-gnueabi


安装时,会弹出对话框,提示输入安装路径,以及是否安装,具体操作参考下图所示:



2

测试工具链

执行`source /opt/poky/3.1.20/environment-setup-aarch64-poky-linux`与`$CC-v`两条命令:



出现以上信息,表示SDK安装成功,接下来就可以直接使用安装好的SDK进行应用开发。


配置完成工具链以后会有一下编译器名称,分别是:

➢CC

➢CFLAGS

➢CXX

➢CXXFLAGS

➢LD

➢LDFLAGS

➢ARCH

➢CROSS_COMPILE

➢GDB

➢OBJDUMP

编译器。

C标志,由C编译器使用。

C++编译器。

C++标志,由CPP使用

链接器。

链接标志,由链接器使用。

芯片架构名称。

用于内核编译。

调试器。

objdump。


如果你需要编译系统镜像配套的应用程序,则需要在编译时指定sysroot对应的lib库与头文件。


lib64库路径

/opt/poky/3.1.20/sysroots/aarch64-poky-linux/usr/lib64



头文件路径

/opt/poky/3.1.20/sysroots/aarch64-poky-linux/usr/include



3

编写应用程序

接下来使用c语言编写一个简单的helloword程序,通过前面我们安装好的工具链交叉编译,最后上传至G2L RemiPI安装。

左右滑动查看完整内容

#include 
int main(int argc,char **argv){ printf("Hello RemiPi!!\n"); return 0;}


设置环境变量,编译hello.c文件。

左右滑动查看完整内容

ubuntu@ubuntu2004:~$ source /opt/poky/3.1.20/environment-setup-aarch64-poky-linuxubuntu@ubuntu2004:~$ $CC hello.c -o helloIn file included from /opt/poky/3.1.20/sysroots/aarch64-poky-linux/usr/include/bits/libc-header-start.h:33, from /opt/poky/3.1.20/sysroots/aarch64-poky-linux/usr/include/stdio.h:27, from hello.c:1:/opt/poky/3.1.20/sysroots/aarch64-poky-linux/usr/include/features.h:397:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]# warning _FORTIFY_SOURCE requires compiling with optimization (-O) ^~~~~~~ubuntu@ubuntu2004:~$ file hellohello: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-aarch64.so.1, for GNU/Linux 3.14.0, BuildID[sha1]=eb528014693897face9614c09959056f19759777, with debug_info, not stripped


4

上传并运行

编译完成后,通过前面章节介绍的SCP方式,发送到开发板内,然后运行,即可看到C程序打印的Hello RemiPi!!

左右滑动查看完整内容

ubuntu@ubuntu2004:~/C-Test$ scp hello root@192.168.5.9:/mnt/hello 100% 13KB 2.1MB/s 00:00


在开发板上执行hello程序:

左右滑动查看完整内容

root@myir-remi-1g:/mnt# lshelloroot@myir-remi-1g:/mnt# ./helloHello RemiPi!!


14.6

bitbake使用

14.6.1 显示编译过程

bitbake-v <>


14.6.2 清除编译数据

bitbake-c cleanall recipe_name

清除包括clean、cleanall、cleanstate


14.6.3 编译过程的信息

附带debug信息:

bitbake-vDD


14.6.4 查看某个配方的任务

({recipe}_{version}.bb):

bitbake-c listtasks recipe_name


14.6.5 显示所有配方的版本

当前版本和首选版本:

bitbake-s


14.6.6 构建一个recipe

执行该recipe的所有tasks:

bitbade recipe-name


14.6.7 执行某个recipe的.bb文件

bitbake-b {recipe}_{version}.bb


14.6.8 只运行recipe中的某个task

bitbake-c your-task recipe-name


常见task:

左右滑动查看完整内容

do_build Default task for a recipe - depends on all other normaltasks required to 'build' a recipe


左右滑动查看完整内容

do_checkuri Validates the SRC_URI value


左右滑动查看完整内容

do_checkuriall Validates the SRC_URI value for all recipes required to build a target


左右滑动查看完整内容

do_clean Removes all output files for a targetdo_cleanall Removes all output files, shared state cache, and downloaded source files for a target


左右滑动查看完整内容

do_cleansstate Removes all output files and shared state cache for a target


左右滑动查看完整内容

do_compile Compiles the source in the compilation directory


左右滑动查看完整内容

do_configure Configures the source by enabling and disabling any build-time and configuration options for the software being built


左右滑动查看完整内容

do_devpyshell Starts an interactive Python shell for development/debugging


左右滑动查看完整内容

do_devshell Starts a shell with the environment set up for development/debugging


左右滑动查看完整内容

do_fetch Fetches the source code


左右滑动查看完整内容

do_fetchall Fetches all remote sources required to build a target


左右滑动查看完整内容

do_install Copies files from the compilation directory to a holding area


左右滑动查看完整内容

do_listtasks Lists all defined tasks for a target


左右滑动查看完整内容

do_package Analyzes the content of the holding area and splits it into subsets based on available packages and files


左右滑动查看完整内容

do_package_qa Runs QA checks on packaged files


左右滑动查看完整内容

do_package_qa_setscene Runs QA checks on packaged files (setscene version)


左右滑动查看完整内容

do_package_setscene Analyzes the content of the holding area and splits itinto subsets based on available packages and files (setscene version)


左右滑动查看完整内容

do_package_write_ipk Creates the actual IPK packages and places them in thePackage Feed area


左右滑动查看完整内容

do_package_write_ipk_setscene Creates the actual IPK packages and places them in thePackage Feed area (setscene version)


左右滑动查看完整内容

do_packagedata Creates package metadata used by the build system to generate the final packages


左右滑动查看完整内容

do_packagedata_setscene Creates package metadata used by the build system to generate the final packages (setscene version)


左右滑动查看完整内容

do_patch Locates patch files and applies them to the source code


左右滑动查看完整内容

do_populate_lic Writes license information for the recipe that is collected later when the image is constructed


左右滑动查看完整内容

do_populate_lic_setscene Writes license information for the recipe that is collected later when the image is constructed (setscene version)


左右滑动查看完整内容

do_populate_sysroot Copies a subset of files installed by do_install into the sysroot in order to make them available to other recipes


左右滑动查看完整内容

do_populate_sysroot_setscene Copies a subset of files installed by do_install into the sysroot in order to make them available to other recipes (setscene version)


do_prebuilt do_recipe_sanity do_recipe_sanity_all


左右滑动查看完整内容

do_unpack Unpacks the source code into a working directory


下载(fetch)、解包(unpack)、打补丁(patch)、配置(configure)、编译(compile)、安装(install)、打包(package)、staging、做安装包

(package_write_ipk)、构建文件系统等。


14.6.9 有错继续执行

bitbake-k recipe-name


14.6.10 显示包的依赖关系

注意必须是发行版包含的包才可以显示



14.6.11 查看bitbake的版本信息

bitbake--version


14.6.12 bitbake使用说明

bitbake--help


需要技术支持?

如您在使用瑞萨MCU/MPU产品中有任何问题,可识别下方二维码或复制网址到浏览器中打开,进入瑞萨技术论坛寻找答案或获取在线技术支持。

https://community-ja.renesas.com/zh/forums-groups/mcu-mpu/



未完待续


推荐阅读

LVGL前台程序开发相关操作——RZ MPU工业控制教程连载(53)


MQTT测试程序上机实验及程序开发——RZ MPU工业控制教程连载(55)

Modbus TCP Server程序开发与Yocto系统构建——RZ MPU工业控制教程连载(56)


更多精彩,敬请关注

需要产品及方案支持

请扫码登记


评论 (0)
  •   陆地装备体系论证与评估综合平台系统解析   北京华盛恒辉陆地装备体系论证与评估综合平台系统是契合现代军事需求而生的专业系统,借助科学化、智能化手段,实现对陆地装备体系的全方位论证与评估,为军事决策和装备发展提供关键支撑。以下从功能、技术、应用及展望展开分析。   应用案例   目前,已有多个陆地装备体系论证与评估综合平台在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润陆地装备体系论证与评估综合平台。这些成功案例为陆地装备体系论证与评估综合平台的推广和应用提供了有力支持。
    华盛恒辉l58ll334744 2025-04-24 10:53 79浏览
  •   后勤实验仿真系统平台深度解析   北京华盛恒辉后勤实验仿真系统平台依托计算机仿真技术,是对后勤保障全流程进行模拟、分析与优化的综合性工具。通过搭建虚拟场景,模拟资源调配、物资运输等环节,为后勤决策提供数据支撑,广泛应用于军事、应急管理等领域。   应用案例   目前,已有多个后勤实验仿真系统平台在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润后勤实验仿真系统平台。这些成功案例为后勤实验仿真系统平台的推广和应用提供了有力支持。   一、核心功能   (一)后勤资源模拟
    华盛恒辉l58ll334744 2025-04-23 15:39 155浏览
  •   电磁频谱数据综合管理平台系统解析   一、系统定义与目标   北京华盛恒辉电磁频谱数据综合管理平台融合无线传感器、软件定义电台等前沿技术,是实现无线电频谱资源全流程管理的复杂系统。其核心目标包括:优化频谱资源配置,满足多元通信需求;运用动态管理与频谱共享技术,提升资源利用效率;强化频谱安全监管,杜绝非法占用与干扰;为电子战提供频谱监测分析支持,辅助作战决策。   应用案例   目前,已有多个电磁频谱数据综合管理平台在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁频谱数
    华盛恒辉l58ll334744 2025-04-23 16:27 182浏览
  •   高海拔区域勤务与装备保障调度系统平台解析   北京华盛恒辉高海拔区域勤务与装备保障调度系统平台专为高海拔特殊地理环境打造,致力于攻克装备适应、人员健康保障、物资运输及应急响应等难题。以下从核心功能、技术特点、应用场景及发展趋势展开全面解读。   应用案例   目前,已有多个高海拔区域勤务与装备保障调度系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润高海拔区域勤务与装备保障调度系统。这些成功案例为高海拔区域勤务与装备保障调度系统的推广和应用提供了有力支持。   一、核心
    华盛恒辉l58ll334744 2025-04-24 10:13 76浏览
  • 一、行业背景与市场需求高血压作为全球发病率最高的慢性病之一,其早期监测与管理已成为公共卫生领域的重要课题。世界卫生组织数据显示,全球超13亿人受高血压困扰,且患者群体呈现年轻化趋势。传统血压计因功能单一、数据孤立等缺陷,难以满足现代健康管理的需求。在此背景下,集语音播报、蓝牙传输、电量检测于一体的智能血压计应运而生,通过技术创新实现“测量-分析-管理”全流程智能化,成为慢性病管理的核心终端设备。二、技术架构与核心功能智能血压计以电子血压测量技术为基础,融合物联网、AI算法及语音交互技术,构建起多
    广州唯创电子 2025-04-23 09:06 166浏览
  • 故障现象一辆2016款奔驰C200L车,搭载274 920发动机,累计行驶里程约为13万km。该车组合仪表上的防侧滑故障灯、转向助力故障灯、安全气囊故障灯等偶尔异常点亮,且此时将挡位置于R挡,中控显示屏提示“后视摄像头不可用”,无法显示倒车影像。 故障诊断用故障检测仪检测,发现多个控制单元中均存储有通信类故障代码(图1),其中故障代码“U015587 与仪表盘的通信存在故障。信息缺失”出现的频次较高。 图1 存储的故障代码1而组合仪表中存储有故障代码“U006488 与用户界
    虹科Pico汽车示波器 2025-04-23 11:22 94浏览
  •   通用装备论证与评估系统平台解析   北京华盛恒辉通用装备论证与评估系统平台是服务军事装备全生命周期管理的综合性信息化平台,通过科学化、系统化手段,实现装备需求论证、效能分析等核心功能,提升装备建设效益。   应用案例   目前,已有多个通用装备论证与评估系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润通用装备论证与评估系统。这些成功案例为通用装备论证与评估系统的推广和应用提供了有力支持。   一、系统分层架构   (一)数据层   整合装备性能、作战、试验等多源异
    华盛恒辉l58ll334744 2025-04-24 16:14 46浏览
  •   航空兵训练与战术对抗仿真平台系统解析   北京华盛恒辉航空兵训练与战术对抗仿真平台系统是现代军事训练的关键工具,借助计算机技术构建虚拟战场,支持多兵种协同作战模拟,为军事决策、训练及装备研发提供科学依据。   应用案例   目前,已有多个航空兵训练与战术对抗仿真平台在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润航空兵训练与战术对抗仿真平台。这些成功案例为航空兵训练与战术对抗仿真平台的推广和应用提供了有力支持。   一、系统架构与核心功能   系统由模拟器、计算机兵力生
    华盛恒辉l58ll334744 2025-04-24 16:34 48浏览
  •   有效样本分析决策系统平台全面解析   一、引言   北京华盛恒辉有效样本分析决策系统在当今数据驱动的时代,企业、科研机构等面临着海量数据的处理与分析挑战。有效样本分析决策系统平台应运而生,它通过对样本数据的精准分析,为决策提供有力支持,成为提升决策质量和效率的关键工具。   应用案例   目前,已有多个有效样本分析决策系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润有效样本分析决策系统。这些成功案例为有效样本分析决策系统的推广和应用提供了有力支持。   二、平台概述
    华盛恒辉l58ll334744 2025-04-24 11:13 73浏览
  • 前言本文主要演示基于TL3576-MiniEVM评估板HDMI OUT、DP 1.4和MIPI的多屏同显、异显方案,适用开发环境如下。Windows开发环境:Windows 7 64bit、Windows 10 64bitLinux开发环境:VMware16.2.5、Ubuntu22.04.5 64bitU-Boot:U-Boot-2017.09Kernel:Linux-6.1.115LinuxSDK:LinuxSDK-[版本号](基于rk3576_linux6.1_release_v
    Tronlong 2025-04-23 13:59 131浏览
  •   陆地边防事件紧急处置系统平台解析   北京华盛恒辉陆地边防事件紧急处置系统平台是整合监测、预警、指挥等功能的智能化综合系统,致力于增强边防安全管控能力,快速响应各类突发事件。以下从系统架构、核心功能、技术支撑、应用场景及发展趋势展开全面解读。   应用案例   目前,已有多个陆地边防事件紧急处置系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润陆地边防事件紧急处置系统。这些成功案例为陆地边防事件紧急处置系统的推广和应用提供了有力支持。   一、系统架构   感知层:部
    华盛恒辉l58ll334744 2025-04-23 11:22 124浏览
  • 一、技术背景与市场机遇在智能家居高速发展的今天,用户对家电设备的安全性、智能化及能效表现提出更高要求。传统取暖器因缺乏智能感知功能,存在能源浪费、安全隐患等痛点。WTL580-C01微波雷达感应模块的诞生,为取暖设备智能化升级提供了创新解决方案。该模块凭借微波雷达技术优势,在精准测距、环境适应、能耗控制等方面实现突破,成为智能取暖器领域的核心技术组件。二、核心技术原理本模块采用多普勒效应微波雷达技术,通过24GHz高频微波信号的发射-接收机制,实现毫米级动作识别和精准测距。当人体进入4-5米有效
    广州唯创电子 2025-04-23 08:41 152浏览
  •   海上训练与保障调度指挥平台系统解析   北京华盛恒辉海上训练与保障调度指挥平台系统是现代海上作战训练的核心枢纽,融合信息技术、GIS、大数据及 AI 等前沿技术,旨在实现海上训练高效组织、作战保障科学决策。以下从架构功能、应用场景、系统优势及发展挑战展开解读。   应用案例   目前,已有多个海上训练与保障调度指挥平台在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润海上训练与保障调度指挥平台。这些成功案例为海上训练与保障调度指挥平台的推广和应用提供了有力支持。   一
    华盛恒辉l58ll334744 2025-04-24 15:26 53浏览
  •   复杂电磁环境模拟系统平台解析   一、系统概述   北京华盛恒辉复杂电磁环境模拟系统平台是用于还原真实战场或特定场景电磁环境的综合性技术平台。该平台借助软硬件协同运作,能够产生多源、多频段、多体制的电磁信号,并融合空间、时间、频谱等参数,构建高逼真度的电磁环境,为电子对抗、通信、雷达等系统的研发、测试、训练及评估工作提供重要支持。   应用案例   目前,已有多个复杂电磁环境模拟系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润复杂电磁环境模拟系统。这些成功案例为复杂电
    华盛恒辉l58ll334744 2025-04-23 10:29 180浏览
  •   无人机结构仿真与部件拆解分析系统平台解析   北京华盛恒辉无人机结构仿真与部件拆解分析系统无人机技术快速发展的当下,结构仿真与部件拆解分析系统平台成为无人机研发测试的核心工具,在优化设计、提升性能、降低成本等方面发挥关键作用。以下从功能、架构、应用、优势及趋势展开解析。   应用案例   目前,已有多个无人机结构仿真与部件拆解分析系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润无人机结构仿真与部件拆解分析系统。这些成功案例为无人机结构仿真与部件拆解分析系统的推广和应用提
    华盛恒辉l58ll334744 2025-04-23 15:00 191浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦