Linux移植实际操作一
@
*前言
目前看了很多关于“Linux移植”的的各种教程、书籍,看完发现不过是对已有板子、已有驱动进行启用、禁用、参数修改。只能叫做“Linux配置”。
还有很多书籍,对理论讲解得天花乱坠、生动形象,一到实际操作点,就闭口不谈、含糊其辞。诚然,学习了理论知识能更清楚Linux思想,但实际移植的时候就会发现这些理论点基本都是内核固有程序,是与板级、硬件无关的,几乎不用修改的。而板级、硬件相关的各种关键点、难点才是移植过程的拦路虎。珍惜时间和金钱,少看ctrl c和ctrl v编写的书。
测试的板子,各种硬件资源都无同款,移植时遇到了数不胜数的坑。一边解决一边与大家分享、讨论。
*环境介绍:
开发板:ARM内核,有SRAM、DDR、Flash、Timer、Uart、以太网等必备资源。
uboot版本:基于U-Boot 2010.03修改。
内核版本:基于linux2.6修改。
文件系统:ramdisk,直接传输到sram上可以在线运行测试。
一、VMware
推荐vmware workstation15.1.0,下载地址:
https://www.cnblogs.com/hiuhungwan/p/10887761.html
二、Ubuntu
推荐ubuntu-16.04 x64。
去百问网下载jz2440配套资料,有如下Ubuntu压缩包:ubuntu-16.04.2-x64-100ask-for win7,8,10 64bit.zip,解压后可直接使用。
http://download.100ask.net/boards/Samsung/jz2440/index.html
三、Ubuntu中代码编辑软件
推荐VS code。
32位Ubuntu无法安装,所以用的64位Ubuntu。
我在Ubuntu中通过软件市场下载的无法打开!在官网下载了code_1.48.0-1597304990_amd64.deb安装包,传输到Ubuntu安装才能正常使用。xxx_amd64.deb这种格式的应该都行。
使用时插件一定要少安装,关掉各种同步、git功能,不然很卡。
以root权限打开和非root权限打开该软件,设置不同步,为了方便,都直接点击软件图标以非root权限打开。此时遇到新的问题:每次保存文件都要输入root密码;解决方法:将文件夹chmod -R 777 xxx,完全放开权限,这样修改代码后保存就不需要再输入密码。
四、Ubuntu中代码比对软件
推荐beyond compare4。有linux版本的,具体操作网上查阅资料即可。
五、编译链
老版本的:arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2;
新版本的:arm-linux-gcc-4.3.2.tgz。
搜索下载的压缩包名字,网上都有教程进行具体的解压、安装、配置环境变量的方法。最好是按教程一步步操作。
Linux移植实际操作一的更多相关文章
- Linux应用层直接操作GPIO
Linux应用层直接操作GPIO 在一个老手的指导下,应用层可以直接操作GPIO,具体指设置GPIO的输入输出以及输出电平高或者低.这个大大地提高了灵活性,官方的文档有GPIO Sysfs Inter ...
- Linux移植之内核启动过程start_kernel函数简析
在Linux移植之内核启动过程引导阶段分析中从arch/arm/kernel/head.S开始分析,最后分析到课start_kernel这个C函数,下面就简单分析下这个函数,因为涉及到Linux的内容 ...
- Linux移植之子目录下的built-in.o生成过程分析
在Linux移植之make uImage编译过程分析中罗列出了最后链接生成vmlinux的过程.可以看到在每个子目录下都有一个built-in.o文件.对于此产生了疑问built-in.o文件是根据什 ...
- Linux移植之配置过程分析
在Linux移植之移植步骤中已经将Linux移植的过程罗列出来了,现在分析一下Linux的配置过程,将分析以下两个配置过程: 1.make s3c2410_defconfig分析 2.make men ...
- Linux移植随笔:对tslib库的ts_test测试程序代码的一点分析【转】
转自:http://www.latelee.org/embedded-linux/porting-linux-tstest-code.html 本文是作者对tslib库的ts_test.c文件进行分析 ...
- CH02基于ZYNQ的嵌入式LINUX移植
CH02基于ZYNQ的嵌入式LINUX移植 1.1概述 实验环境: Windows 10 专业版 Vmware workstation 14.1.1 Ubuntu 16.04.3 Xilinx SDx ...
- arm linux 移植 x265
背景 本来想着把 x265编译到ffmpeg里面,搞定了x265的编译:但是一直报ERROR: x265 not found using pkg-config这个错误,我按照网上的资料,查看了ffbu ...
- ZYNQ Linux 移植:包含petalinux移植和手动移植debian9
参考: https://electronut.in/workflow-for-using-linux-on-xilinx-zynq/ https://blog.csdn.net/m0_37545528 ...
- linux移植问题汇总(一)
linux移植问题汇总(一) 在此记录移植linux过程中出现的问题以及解决方法. 项目GitHub地址 linux3.0.80:https://github.com/numbqq/linux-3.0 ...
随机推荐
- [源码解析] 模型并行分布式训练Megatron (5) --Pipedream Flush
[源码解析] 模型并行分布式训练Megatron (5) --Pipedream Flush 目录 [源码解析] 模型并行分布式训练Megatron (5) --Pipedream Flush 0x0 ...
- Solution -「UOJ #450」复读机
\(\mathcal{Description}\) Link. 求从 \(m\) 种颜色,每种颜色无限多的小球里选 \(n\) 个构成排列,使得每种颜色出现次数为 \(d\) 的倍数的排列方案 ...
- HTTP流量神器Goreplay核心源码详解
摘要:Goreplay 前称是 Gor,一个简单的 TCP/HTTP 流量录制及重放的工具,主要用 Go 语言编写. 本文分享自华为云社区<流量回放工具之 goreplay 核心源码分析> ...
- 使用docker部署awx-1.7.1.0(ansible图形化界面)
文章目录 关于环境 下载awx 下载安装所需依赖 安装docker-compose 配置inventory文件 出现的报错 TASK [local_docker : Run migrations in ...
- 后台运行程序-服务器、python
0前言 最近遇到一个需求,我有一个很小的python程序,需要一直在服务器器上跑,但是我不想一直开着浏览器或者Xshell 7,所以记录一下怎么解决的. 用到的指令是nohup 具体代码就两行 sou ...
- EMNLP 2017 | Sparse Communication for Distributed Gradient Descent
通过将分布式随机梯度下降(SGD)中的稠密更新替换成稀疏更新可以显著提高训练速度.当大多数更新接近于0时,梯度更新会出现正偏差,因此我们将99%最小更新(绝对值)映射为零,然后使用该稀疏矩阵替换原来的 ...
- centos7.+系统,mysql主从部署
两台服务器或者两个虚拟机 主库:master IP:192.168.85.152 从库:slave IP:192.168.85.153 关闭主库防火墙或者放行mysql的3306端口, ...
- 【数据共享】基于Landsat提取的全球河网(河宽)GDWL数据库
GRWL数据库,全称Global River Widths from Landsat Database,是由Allen, George H & Pavelsky. Tamlin M等人基于La ...
- [Unity] 在软件标题栏显示工作路径
(一)问题 项目开发中常会有开多个分支,同时启动多个 Unity 程序的情况,来回切换的时候就容易混淆,有时候还需要用 Show In Explorer 或者其他标志来确认当前使用的是哪个分支. 于是 ...
- IGMP协议测试-网络测试仪实操
一.前言:IGMP协议用于IPv4系统向任何邻居组播路由器报告其组播成员资格.IP组播路由器自己本身也可以是一到多个组播组的成员.这时,组播路由器要实现协议的组播路由器部分. IGMP存在三个不同版本 ...