OK3568 forlinx系统编译过程及问题汇总

1. 共享文件夹无法加载;通过网上把文件夹加载后,拷贝文件很慢,任务管理器查看发现硬盘读写速率很低。解决办法:重新安装vmware tools。

2. 拷贝Linux源码到虚拟机,解压。

3. 虚拟机基本库安装
forlinx@ubuntu:~$ sudo apt-get update //更新下载源信息
forlinx@ubuntu:~$ sudo apt-get install build-essential //提供编译程序必须软件包的列表信息
forlinx@ubuntu:~$ sudo apt-get install libncurses* //用于生成基于文本的用户界面
forlinx@ubuntu:~$ sudo apt-get install lzop //基于Lzo库的压缩解压工具
forlinx@ubuntu:~$ sudo apt-get install net-tools //网络配置工具

以上顺利完成

4. 编译OK3568 Linux源码必要库安装

forlinx@ubuntu:~$ sudo apt-get update //更新apt-get下载源
forlinx@ubuntu:~$ sudo apt-get install openssh-server vim git fakeroot //必备工具包的安装
forlinx@ubuntu:~$ sudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib unzip device-tree-compiler python-pip libncurses5-dev

以上顺利完成

5. Qt Creator安装

不安装了,先试下

6. 编译

./build.sh

漫长的等待,不知道等了多少个小时,搞了大半天,卡在QT那里不动,于是回头重装QT。然后:

./build.sh cleanall

./build.sh

2023-10-04T00:51:04 >>> host-lzip 1.19 Extracting
2023-10-04T00:51:05 >>> host-lzip 1.19 Patching
2023-10-04T00:51:05 >>> host-lzip 1.19 Configuring
2023-10-04T00:51:05 >>> host-lzip 1.19 Building
2023-10-04T00:51:09 >>> host-lzip 1.19 Installing to host directory
2023-10-04T00:51:10 >>> host-m4 1.4.18 Extracting
2023-10-04T00:51:10 >>> host-m4 1.4.18 Patching
2023-10-04T00:51:11 >>> host-m4 1.4.18 Updating config.sub and config.guess
2023-10-04T00:51:11 >>> host-m4 1.4.18 Patching libtool
2023-10-04T00:51:11 >>> host-m4 1.4.18 Configuring
2023-10-04T00:51:43 >>> host-m4 1.4.18 Building
2023-10-04T00:51:46 >>> host-m4 1.4.18 Installing to host directory
2023-10-04T00:51:47 >>> host-bison 3.0.4 Extracting
2023-10-04T00:51:48 >>> host-bison 3.0.4 Patching
2023-10-04T00:51:48 >>> host-bison 3.0.4 Updating config.sub and config.guess
2023-10-04T00:51:48 >>> host-bison 3.0.4 Patching libtool
2023-10-04T00:51:48 >>> host-bison 3.0.4 Configuring
 

00:51分开始编译,看看要什么时候可以结束

14点多完成编译,共花了13个多小时,提示build.sh指令错误,所在行1077,打开文件,最后一行1066。

因为自己调整了build.sh设备树,为了确认是不是自己的问题,重新解压,重新编译。

Writing boot file...
Writing firmware...
Generating MD5 data...
MD5 data generated successfully!
New image generated successfully!
Making ./Image/update.img OK.
Running build_updateimg succeeded.
Running build_save succeeded.
grep: exceeded PCRE's backtracking limit
grep: exceeded PCRE's backtracking limit
grep: exceeded PCRE's backtracking limit
grep: exceeded PCRE's backtracking limit
grep: exceeded PCRE's backtracking limit
grep: exceeded PCRE's backtracking limit
grep: exceeded PCRE's backtracking limit
grep: exceeded PCRE's backtracking limit
 PLEASE CHECK BOARD GPIO POWER DOMAIN CONFIGURATION !!!!!
 <<< ESPECIALLY Wi-Fi/Flash/Ethernet IO power domain >>> !!!!!
 Check Node [pmu_io_domains] in the file: /home/forlinx/3568/OK3568-linux-source/kernel/arch/arm64/boot/dts/rockchip/OK3568-C-linux.dts 

 请再次确认板级的电源域配置!!!!!!
 <<< 特别是Wi-Fi,FLASH,以太网这几路IO电源的配置 >>> !!!!!
 检查内核文件 /home/forlinx/3568/OK3568-linux-source/kernel/arch/arm64/boot/dts/rockchip/OK3568-C-linux.dts 的节点 [pmu_io_domains] 
Running build_allsave succeeded.

编译成功

7. 修改设备树,禁用PCIE

&pcie30phy {
        status = "disabled";
};

&pcie3x2 {
        reset-gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>;
        enable-gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>;
        vpcie3v3-supply = <&vcc3v3_sys>;
        status = "disabled";
};

&pcie2x1 {
        reset-gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>;
        vpcie3v3-supply = <&vcc3v3_sys>;
        status = "disabled";
};

保存,编译

成功

8. 烧录

烧录成功

9. XSHELL登录提示 received:3,expected:20

解决办法:

在/etc/ssh/sshd_config最后一行加入

KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1

问题解决

10. OK3568 UART8无法使用

打开UART8发送数据,卡死,查了以下,是由于与蓝牙复用问题,参考网上的方法:去除掉/etc/init.d/S97BT 脚本可执行权限。
执行命令chmod -x /etc/init.d/S97BT。
执行命令sync,同步操作。
执行命令reboot,重启开发板。

或修改

vi /etc/init.d/bluetooth-setting.sh 

注释掉下面那行
#!/bin/sh
#hciattach /dev/ttyS8 any -s 115200 115200 flow > /dev/null
 

解决!

注意:UART8的电平是1.8V!!!!!!!!,其他的是3,3V

11. 编译Ubuntu系统

依次执行./bulid.sh

ln -rsf ubuntu-20.04-release/parameter.txt rockdev/parameter.txt
ln -rsf ubuntu-20.04-release/ubuntu.img rockdev/rootfs.img
./build.sh updateimg
ls rockdev/update.img

cp -v rockdev/update.img /mnt/hgfs/forlinx/image/

使用烧录软件烧录,即可。注意:烧录前最好先删除FLASH

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

黄大刀

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

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

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

打赏作者

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

抵扣说明:

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

余额充值