嵌入式 linux交叉编译(入门教程)

一、准备工作

1:软件准备

A.可用于进行交叉编译的linux系统环境,可以用windows的linux子系统(wsl),也可以用linux虚拟机等系统环境。目前测试用的系统是Ubuntu18.04。安装好系统后,输入 sudo apt install build-essential 安装gcc等编译工具。

B.可以进行C语言编译的软件,建议使用CLion,使用起来简单方便。

C.获得gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf.tar.xz 交叉编译工具,解压到 /usr/local/中,并把文件夹重命名为arm-linux(为了方便后续配置)。

D.可以进行串口调试连接的软件,建议用xshell,secureCRT等软件,选择serial串口模式(波特率为115200bps),进行连接。主要是用于进行嵌入版的控制台操作。

E.给linux系统安装一个tftp服务器,安装方式可以参考: https://blog.csdn.net/qq153471503/article/details/106213299

主要是用于与嵌入板进行文件的上传和下载的交互。

F.在/usr目录,创建lib目录,把demo目录下的so库文件,拷贝到lib目录中。

二、硬件准备

A.一张中星微VC0768的嵌入板。

B.USB串口线:串口线连接如下:插在JP1串口处,分别是黑、绿、白插入,另外一端USB口接上电脑即可。具体如下:

C.网线:插在T16的网口上。

三、环境编译

  1. CLion的交叉编译环境配置参考:

·······

2.测试工程参考:

        参考测试用例embed_test,也可以自行创建CMakeList.txt,并引入libcurl.so和libsm.so,进行工程的搭建。CMakeList.txt参考如下:

3.云密码服务器配置

        前置条件:使用有物联网管理模块的云密码服务平台。

        

(1)首先需要管理员创建一个机构供相应的物联网项目进行使用,应用方获得机构的账号和密码后,登录到云密码服务平台,进行密码的修改;

(2)创建SM9主密钥供应用的使用:

        

(3)进入密码应用->默认应用->密钥下载,点击应用操作,选择密钥配置,进行密码机密钥的关联,与步骤2中的密钥进行关联;

(4)进入单点登录->应用管理,点击新增应用:

        得到应用ID;

(5)点击密码,获得应用凭证:

(6)到物联网管理->开户管理,进行设备的添加:

点击新增:

记下:设备的用户id为手机号:13800138002,设备ID为:tianyingserial0001, 盐值为:tianyingsalt123。至此,物联网平台的设置基本完成。

四、运行编译

1.首先了解嵌入版中的tftp的使用:

Usage: tftp [OPTIONS] HOST [PORT]

Transfer a file from/to tftp server

        -l FILE Local FILE   ==>本地文件名
        -r FILE Remote FILE   ==>服务器上的文件名
        -g      Get file     ==>表示需要下载文件
        -p      Put file     ==>表示需要上传文件

例子:(其中tftp服务器地址为:192.168.1.101)

(1)下载embed_test 到本地的嵌入板:

tftp -g -r embed_test 192.168.1.101

(2)上传test.log到服务器:

chmod +x embed_test

(3)用embed_test 的测试demo,进行交叉编译,得到可执行文件embed_test,放到tftp的根目录下,然后到嵌入板,进行下载embed_test 到本地:

tftp -g -r embed_test 192.168.1.101

(4)下载后,给embed_test添加运行权限:

chmod +x embed_test

(5)即可进行./embed_test的运行测试。

五、参考文档

      wsl系统的安装:

  1. https://baijiahao.baidu.com/s?id=1676458219387247920&wfr=spider&for=pc

      tftp服务器的搭建:

      2.https://blog.csdn.net/qq153471503/article/details/106213299

      tftp命令的使用:

      3. http://baidu.com

      CLion的下载(建议下载:2022.2.2):

      4.https://www.jetbrains.com/zh-cn/clion/download/#section=windows

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
嵌入式Linux基础教程第2版》是一本针对嵌入式系统开发的Linux基础教程。 这本书主要介绍了嵌入式系统的基本概念、嵌入式Linux的基本知识和技术。首先,它对嵌入式系统的特点、发展历程进行了简单介绍,帮助读者了解嵌入式系统的基本概念和应用领域。然后,它详细介绍了Linux操作系统的基本概念和组成结构,包括内核、文件系统、设备驱动等。接着,它介绍了嵌入式系统的开发环境搭建,包括交叉编译工具链的配置、开发板的选择和连接等方面。此外,它还详细介绍了嵌入式Linux系统的启动过程和常用的启动方式,以及系统初始化过程和常用的初始化工具。 在软件开发方面,该书详细介绍了Linux内核模块的开发和加载过程,包括模块编写、编译和加载等方面。此外,它还介绍了嵌入式系统的应用程序开发,包括编写用户空间应用程序、使用控制台、处理输入输出等方面。对于图形界面的开发,该书还介绍了常用的窗口系统和图形库。最后,该书还介绍了嵌入式系统的调试和测试技术,包括调试工具的使用、性能分析和异常处理等方面。 《嵌入式Linux基础教程第2版》适合嵌入式系统开发初学者和从事嵌入式系统开发的工程师,尤其是对Linux操作系统嵌入式Linux系统感兴趣的读者。通过学习该书,读者可以了解嵌入式系统的基本原理和开发技术,提高嵌入式系统开发的能力和水平。该书内容丰富、实用,结构清晰,适合作为嵌入式系统开发的入门教材和参考书籍。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦睡了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值