OrangePIPC2---编译篇

编译前环境准备

我采用树莓派当我的编译服务器,起内置的编译器够我编译64位的orangepipc2的镜像
在这里插入图片描述
可以看到我的gcc版本还是蛮高的10.2的版本

在这里插入图片描述

uboot编译

下载uboot的源码后执行编译脚本发现出现个问题
在这里插入图片描述

#!/bin/sh
echo -----hello ak !!!
echo -----now start compile
echo "*****Clear Projrct*****"
#make distclean
echo "*****export arrch64 *****"
export CROSS_COMPILE=aarch64-linux-gnu-
export ARCH=arm64
echo "*****ORGpipc2 Config*****"
make orangepi_pc2_defconfig
echo *****make*****
make

date
echo "-----Compile Ending"

出现yylloc重定义问题:
在这里插入图片描述
解决方法:

  1. 我之前下载6.3版本的gcc编译没问题,可以选择更换编译器
  2. 我没找到低版本的aarch arm平台的编译器,如下修改代码
  3. 添加一个extern在这里插入图片描述
    修改后还有如下问题
    在这里插入图片描述
    修改 scripts/Makefile.lib 第 321 行去掉转义符
    在这里插入图片描述

sunxi-tool工具的编译

这个是我之前做的在x86平台做的工具,现在在树莓派上重新做一遍,步骤一样,
安装依赖的工具sudo apt install libusb-1.0-0-dev libz-dev libfdt-dev -y

  1. 下载安装sunxitool工具
    1. 安装usb库
      sudo apt-get install libusb-1.0-0-dev
    2. 下载sunxi-tool源码或者网网盘下载
      git clone git@gitee.com:kalaneryok/sunxi-tools.git
    3. 编译详情可以看github上面的readme
      make tools
      失败-----zlib-------- sudo apt-get install zlib1g-dev
      etc/profile 。bashrc里面修改path
      sudo make install-tools 安装到/usr/local/bin目录下
      4.或者去百度云吧自己做的sunxi_tools_bin.tar//放到local bin 下解压

kernel编译

安装编译依赖
sudo apt install bison flex libssl-dev bc -y
2.make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig
/bin/sh: 1: bison: not found,,安装 sudo apt-get install bison
/bin/sh: 1: flex: not found sudo apt-get install flex
fatal error: openssl/bio.h: 没有那个文件或目录 sudo apt-get install libssl-dev
3.make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- dtbs
dtb文件在arch/arm64/boot/dts/相关平台的目录下
Image则在arm64/boot下
这个报错和上面uboot的修改一样
在这里插入图片描述
文件有点差异
在这里插入图片描述

rootfs编译

sudo apt-get install libncurses5-dev libncursesw5-dev
库上的rootfs编译是可以的只不过我的树莓派里面的glibc版本较高编译报错
在这里插入图片描述
我目前的busybox 的版泵1.30.0,所以我们升级下busybox版本即可
在这里插入图片描述
在这里插入图片描述
我升级完1.35.0 编译就没问题了
在这里插入图片描述

注意点修改了平台记得busybox运行依赖的库要重新拉,保证编译kernel用的库以及busybox的库和运行时是一致的。

拷贝树莓派本地的一些依赖库后
在这里插入图片描述
板子可以正常运行
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值