关于【firefly-rk3399】的环境配置以及编译内核遇到的问题,烧写update.img相关量产工具的说明(一)

简介: 关于【firefly-rk3399】的环境配置以及编译内核遇到的问题,烧写update.img相关量产工具的说明(一)

【写在前面】

两种情况:

第一,直接在本机安装Linux Ubuntu16.04,那么按照网上的教程安装配置即可,此处提醒最好把硬盘配置大一些,便于之后的其他模块内核驱动的编译和移植,40G以上,越大越好。

第二,在VMware Workstation 工具中安装 Linux Ubuntu16.04 ,可以按照下方给出链接进行百度云盘下载 VMware Workstation 12版本 和 ubuntu-16.04.4-desktop-amd64.iso  镜像。

链接:https://pan.baidu.com/s/159k9A9E14gZGitRzE0Yifg 密码:wqj2 【长期有效】

 

【安装环境】

【第一步,初始化编译环境】

$ sudo apt-get install git gnupg flex bison gperf build-essential \
zip tar curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 cmake tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386 lzop

其中这几个软件尤为重要

sudo apt-get install build-essential lzop libncurses5-dev libssl-dev libc6:i386  

 

为了方便,大家可以直接用 root 超级用户操作所有步骤。

【敲黑板】 安装上述软件中,libgl1-mesa-glx:i386 可能会爆错,显示需要依赖文件

libgl1-mesa-glx:i386 : 依赖: libglapi-mesa:i386 (= 8.0.4-0ubuntu0.6)

                       推荐: libgl1-mesa-dri:i386 (>= 7.2)

这种情况,可以换成安装 libgl1-mesa-dri:i386 安装包。

类似于这样的问题,大家可以使用 sudo apt-get install aptitude   安装 aptitude

使用aptitude安装软件命令:sudo aptitude install  xxx

aptitude与 apt-get 是互相补充的,有一些功能对方没有。

aptitude了解和搜索的安装信息比apt-get 全面一些,具体优势如下:

reinstall, show, search, hold, unhold【apt-get 没上这五个功能】

apt-get: source【aptitude没有】, build-dep【低版本的aptitude没有】

apt-get与aptitude共有的功能:update, upgrade (apt-get upgrade=aptitude safe-upgrade, apt-get dist-upgrade=aptitude full-upgrgade)

【第二步,创建软链接】

sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

【第三步,安装编译工具链】

sudo apt-get install gcc-arm-linux-gnueabihf \
gcc-aarch64-linux-gnu device-tree-compiler lzop libncurses5-dev \
libssl1.0.0 libssl-dev

如果一次性安装出现错误,请逐个安装即可。或者可以使用 aptitude install xxx

 

【获取内核源码kernel】

git clone -b firefly https://github.com/FireflyTeam/kernel.git   ( 2.2G )

【配置环境变量】

【敲黑板】这里是我遇到最大的坑,由于官文网站rk3399这个部分改版,小编居然把环境变量给写错了,之后的兄弟不要被坑了

export ARCH=arm64

export CROSS_COMPILE=aarch64-linux-gnu-     这是正确的

export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-   这是错误的

如果大家误用官网给的上述错误的命令,一定会出现   没有规则生成 rk3399-firefly-linux.dtb文件,而且会一直重复出现该问题,哪怕你重装环境无数遍,这个问题一直不能解决,因为编译工具链官方给错啦,可能是小编改版的时候贴错了吧。

【开始编译 rk3399】

make firefly_linux_defconfig           //配置环境变量     和make menuconfig 效果是一样的
make rk3399-firefly-linux.img -j4      //make img 文件

编译成功会出现:

并且在kernel 目录下,会生成 kernel.img  resource.img

 

关于 kernel.img 和 resource.img  以及如何找到loder.img启动文件在下一篇内容中  , 其中会有量产工具的介绍和烧入方式。

相关文章
|
12月前
|
Ubuntu Linux 数据安全/隐私保护
修复Ubuntu 18.04终端无法启动的问题
经过这一系列动作,如果终端还是藏匿不出,那它可能被数字世界的某个角落困住了。但概率比较小。大多数情况下,按照上面的修复步骤,你的 Ubuntu 18.04 终端应该能恢复健康。当然,这些攻略仅相当于一把解开问题的钥匙,并非覆盖所有情况。如果还有坎儿,可能需要深入探查,或者寻求社区的力量。别忘了,团结就是力量,绝大多数问题都不是单枪匹马能解决的。
749 27
|
Linux Docker 容器
阿里云安装Docker 步骤
阿里云安装Docker 步骤: step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 Step 2: 添加软件源信息 sudo yum-config-manager --add-repo http://mirrors.
5261 0
|
11月前
|
定位技术 Android开发 数据安全/隐私保护
抖音虚拟位置软件, 修改定位位置app,抖音虚拟位置修改
这些代码展示了如何模拟GPS位置变化和Android设备上的虚拟定位功能。第一个模块模拟了城市间的移动轨迹
|
人工智能 安全 API
Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
本文介绍了如何解决Deepseek官网卡顿问题,并详细讲解了阿里云提供的Deepseek-R1满血版解决方案。新用户可领取100万token,支持网页版和API调用。文中还提供了在Chatbox和Cursor中配置API的具体步骤,帮助用户轻松体验高性能的Deepseek-R1模型。适合初学者和开发者快速上手使用。
1334 2
Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
|
PyTorch 算法框架/工具 Python
yolov5的完整部署(适合新人和懒人,一键安装)
这篇文章为新人和希望简化部署过程的用户介绍了如何一键安装和配置YOLOv5环境,包括安装Anaconda、设置镜像源、安装PyCharm、创建虚拟环境、下载YOLOv5项目、安装依赖以及在PyCharm中配置和运行项目。
9615 0
yolov5的完整部署(适合新人和懒人,一键安装)
|
Java 开发者
通义灵码——让学习更高效
本文介绍了一位Java后端开发工程师如何利用通义灵码个人版的@workspace功能提升项目学习效率。通过在IDEA中安装通义灵码插件并登录使用,输入特定提示词即可快速获取项目信息、技术解答及优化建议,显著提高了学习效率,减少了时间和成本。
1084 3
|
Ubuntu 安全 网络协议
|
前端开发 Java API
使用JavaFX进行跨平台桌面应用开发的技术指南
【5月更文挑战第29天】JavaFX是Oracle的开源GUI工具包,用于跨平台桌面应用开发。它提供丰富的API、UI控件、图形动画支持及媒体集成。通过设置JDK和JavaFX SDK环境,使用IDE创建项目,编写并运行JavaFX代码,开发者可构建富客户端应用。遵循MVC模式、使用FXML和CSS,以及测试兼容性,能提升应用质量和用户体验。
1121 2
RK3399平台开发系列讲解(高速设备驱动篇)6.54、PCIe对PCI配置空间的扩展
RK3399平台开发系列讲解(高速设备驱动篇)6.54、PCIe对PCI配置空间的扩展
623 0
RK3399平台开发系列讲解(高速设备驱动篇)6.54、PCIe对PCI配置空间的扩展
|
缓存 Linux 程序员
Linux探秘:多角度解析如何查看库的版本号
Linux探秘:多角度解析如何查看库的版本号
671 5