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

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

3天内不再提示

【飞凌OKA40i-C开发板试用体验】编译环境的搭建以及编写自己的第一个helloworld

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-10-20 11:08 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文来源电子发烧友社区,作者:刘建华, 帖子地址:https://bbs.elecfans.com/jishu_2303426_1_1.html


【资料获取】:
*附件:OKA40i-C、OKT3-C开发板 产品资料发布记录-2022.07.23(1).pdf
这里给出了所有需要的资料,大家可以自行下载。我主要下载了官方已经建立好环境的ubuntu虚拟机包,还有就是“OKA40i-C、OKT3-C_Linux3.1.0+QT5.9_用户资料-20220322”
image.png

【1】建立编译环境
1、安装ubuntu虚拟机,由于我在以前的开发板试用中已经安装好了VMwar。这里就不再展示,如果没有安装的,请自行根据《OKA40i-C&OKT3-C_Qt5.9+linux-3.10用户编译手册_V1.0_20211218.pdf》的第一、三章来安装,手册有详细的安装说明:
image.png

image.png

2、我这里直接按照手册的第二章,直接就有现成的环境,应该很快就可以。如果有什么不明白,可以联系我交流。安装好后打开虚拟机:
image.png
3、仔细阅读编译手册《第四章:linux编译篇》,并一步步实现。

  1. 先在虚拟机中的/home/目录下新建work文件夹,并把OKA40i-C、OKT3-C_Linux3.1.0+QT5.9_用户资料-20220322Linux源码目录下的xaa、xab拷贝到虚拟机work目录下面:
    image.png
    将共享文件夹中的源码拷贝到 ubuntu 的/home/forlinx/work 目录下并校验。
    image.png
    合并源码,进行校验和解压。
    image.png
    解压后进入lichee目录下面:

image.png
这个源码包那是真的占资源呀,差不多70G,所以大家要准备一个大的硬盘,要不一下就爆炸。
image.png
解压文件系统:(注意)这里文件里的解压文件跟实际的不同,这里是rootfs-a40i.tar.gz。
image.png

image.png

到这里,源码解压完毕,我发现我的硬盘只有4G不到了,赶紧把虚拟机换个硬盘。。。。
image.png

换了硬盘接着来编译源码:
按照《手册》4.2.1一步步设置:
image.png

然后编译内核:
forlinx@ubuntu:~/work/lichee$ sudo ./build.sh -m kernel
然后就要耐心等待N久,看各人的电脑来决定:
image.png
然后生成rootfs.ext4、镜像打包:

image.png

image.png
打包:
image.png
打包结束。
image.png

致此源码的编译到这里就结束了。这是我第一次编译源码,教程写得非常详细,大家应该对照起来没有什么问题。这里建议的就是硬盘一定要留100G。
当然大家要是不想折腾源码编译,在OKA40i-C、OKT3-C_Linux3.1.0+QT5.9_用户资料-20220322Linux镜像目录下面有编译好的好些包,大家可以自己选择下载:
image.png

【镜像烧写】

1、将生成的sun8iw11p1_linux_OKA40i_C_uart0-1024x600.img文件拷到win下面。
2、安装PhoenixSuit。安装包在OKA40i-C、OKT3-C_Linux3.1.0+QT5.9_用户资料-20220322Linux工具目录中,安装过程省。。。
3、烧写,要多试几次,我也是弄了好多烧才
image.png

【编译自己的程序】
在work目录下新建一个helloworld文件夹,在helloworld文件夹内新建helloworld.c,写代码如下:

#include   

int main(void)
{
    printf("hellowrld!rn");
    printf("hello OKA40i-Crn");
    return 0;
}

在lichee/buildroot-201611/target/user_rootfs_apps/cmd/subs下的rtc中复制一个makefile文件过来,并修改为:

DEST_DIR      ?=_install
#CC            ?=arm-linux-gcc
CC              =arm-linux-gnueabihf-gcc-5.3.1 
build:
	@$(CC) -o $(TARGET) helloworld.c

hold:
	[url=home.php?mod=space&uid=70594]@echo[/url] "helloworld hold[skip]"

install:
	[url=home.php?mod=space&uid=2293869]@MKDIR[/url] -p $(DEST_DIR)
	@cp $(TARGET) $(DEST_DIR)

uninstall:
	@rm -fr $(DEST_DIR)/$(TARGET)

distclean: uninstall
	@rm -fr $(TARGET)
	@rm -fr _install

然后执行make:
image.png
没有报错,在当前目录下生成的helloworld文件:
image.png

把hellowrld拷到开发板下面,修改权限就可以运行了:
image.png

【总结】经过好几天的文章阅读,终于学会了源码编译、程序的单独编译。这里非常感谢“飞凌A40i开发板评测技术交流群”里面的大佬 @李海,帮助我在编译上找出了问题。

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

    关注

    0

    文章

    135

    浏览量

    16791
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Linux 下交叉编译实战:跑起来你的第一个 STM32 程序

    跑起来你的第一个STM32程序。、准备工作在开始之前,需要准备:1、Linux开发环境Ubuntu、Debian或其他主流发行版都可以。2、ARMGCC交叉
    的头像 发表于 11-24 19:04 236次阅读
    Linux 下交叉<b class='flag-5'>编译</b>实战:跑起来你的<b class='flag-5'>第一个</b> STM32 程序

    OK-MX9596-C开发板试用】②体验WIFI、蓝牙、音频、视频,为AI应用打下基础

    OK-MX9596-C开发板试用】①开箱图赏、跑分测试、yolo大模型三箭齐发 -
    发表于 10-21 18:17

    【作品合集】嵌入式OK527N-C开发板测评

    开发板试用】开箱与开发板介绍视频 作者:jf_69121293【T527N开发板
    发表于 09-22 15:54

    送啦!嵌入式联合NXP邀您参加OK-MX9596-C开发板试用活动

    送啦!嵌入式联合NXP邀您参加OK-MX9596-C开发板试用活动
    的头像 发表于 08-22 08:03 754次阅读
    送啦!<b class='flag-5'>飞</b><b class='flag-5'>凌</b>嵌入式联合NXP邀您参加OK-MX9596-<b class='flag-5'>C</b><b class='flag-5'>开发板</b><b class='flag-5'>试用</b>活动

    T527N开发板试用】QT应用开发

    qt介绍 Qt 是跨平台的C++ 应用程序开发框架 ,由挪威公司 Trolltech(现为 The Qt Company)开发。Qt C
    发表于 08-19 15:04

    【米尔NXP i.MX 91开发板评测】开发环境搭建+编译uboot,kernel

    1 获取资料 进入米尔官网,找到开发者中心,就可以获得全部开发资料。详情咨询米尔客服。 2 开发环境搭建 在已经有的Ubuntu主机中,选
    发表于 08-18 15:40

    T527N开发板试用】7寸RGB屏幕适配与TP驱动

    Touchscreens input device support---> 再选中 Focaltech Touchscreen 然后重新编译kernel。按照[【T527N开发板
    发表于 08-15 18:06

    RK3568开发板暗藏32位兼容开关?嵌入式带你键解锁!

    RK3568是款64位处理器,嵌入式为其提供的交叉编译器也是64位的,然而部分用户可能需要在RK3568开发板上运行32位应用。本文将
    的头像 发表于 07-19 08:49 4180次阅读
    RK3568<b class='flag-5'>开发板</b>暗藏32位兼容开关?<b class='flag-5'>飞</b><b class='flag-5'>凌</b>嵌入式带你<b class='flag-5'>一</b>键解锁!

    T527N开发板试用】开箱与开发板介绍视频

    嵌入式OK527N-C开发板开箱介绍】 https://www.bilibili.com/video/BV1sfKSzmEtU/?share_source=copy_web&
    发表于 06-26 09:43

    【Banana Pi BPI-RV2开发板试用体验】开发环境搭建

    参考 https://docs.banana-pi.org/zh/BPI-RV2/BananaPi_BPI-RV2 前言 本文分享开发板基本的ssh登录,文件传输,c开发环境
    发表于 06-25 16:07

    5分钟学会网络服务搭建i.MX9352开发板 + Linux 6.1实战示例

    本文就将以嵌入式OK-MX9352-C开发板(搭载了在工业物联网领域广泛应用的NXP i.MX9352处理器)为平台,介绍如何在Linu
    的头像 发表于 06-13 16:42 1077次阅读
    5分钟学会网络服务<b class='flag-5'>搭建</b>!<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>i</b>.MX9352<b class='flag-5'>开发板</b> + Linux 6.1实战示例

    【米尔-全志T536开发板试用体验】- 开发环境搭建与测试

    本帖最后由 ALSET 于 2025-6-10 12:26 编辑 【米尔-全志T536开发板试用体验】开发环境搭建与测试大信(QQ:8
    发表于 06-10 10:35

    5分钟学会网络服务搭建i.MX9352 + Linux 6.1实战示例

    本文将以嵌入式OK-MX9352-C开发板(搭载了在工业物联网领域广泛应用的NXP i.MX9352处理器)为平台,介绍如何在Linux
    的头像 发表于 05-30 11:08 2143次阅读
    5分钟学会网络服务<b class='flag-5'>搭建</b>,<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>i</b>.MX9352 + Linux 6.1实战示例

    【贝启科技BQ3568HM开源鸿蒙开发板深度试用报告】之5.0.1版本编译helloworld例程

    的镜像文件烧写到开发板,启动后的版本信息如下。 接下来就是准备第一个应用例程helloworld开发。 在代码根目录创建sample子系统文件夹,在子系统目录下创建hell
    发表于 04-24 23:45

    迅为RK3568开发板helloworld 驱动实验-驱动编写

    在学习 C 语言或者其他语言的时候,我们通常是打印句“helloworld”来开启编程世界的大门。学习驱动程序编程亦可以如此,使用 helloworld 作为我们的
    发表于 04-01 15:20