现在很多嵌入式Linux系统移植并不是真正的Linux系统移植,是吗?
我对Linux系统移植很感兴趣,所以问了几家嵌入式培训机构如何移植嵌入式Linux,他们的移植一般仅仅是用arm-linux-gcc把linux源代码重新编译一次,裁剪仅...
我对Linux系统移植很感兴趣,所以问了几家嵌入式培训机构如何移植嵌入式Linux,他们的移植一般仅仅是用arm-linux-gcc把linux源代码重新编译一次,裁剪仅仅是用make menuconfig做了些编译的选择,对源码完全没有修改,就是说gcc不支持的cpu内核,就无法移植linux,make menuconfig没有给出选项的就无法裁剪,我没理解错吧!!!
展开
6个回答
名片
2024-10-28 广告
2024-10-28 广告
Altair HyperWorks是一套功能强大的集成化CAE(计算机辅助工程)软件平台,由Altair公司开发。它涵盖了结构分析、流体动力学、优化、多体动力学、电磁场仿真等多个领域,提供了丰富的仿真工具和优化算法。HyperWorks以其...
点击进入详情页
本回答由名片提供
展开全部
嵌入式linux的移植,分如下几个步骤:
1.拿源码过来打补丁,使其支持目标板子的CPU比如S3C2410/2440 、atmel系列、powerpc系列、mips系列、omap系列等
2.你的原理图很可能跟demo板(参考版)不一致,所以需要修改相应端口几配置
3.make menuconfig 裁剪你不需要的驱动、并添加需要的驱动
4.如果深入点,修改内核的驱动---我们并不需要完完全全自己写,可以拿一个相似的体系结构的该驱动做参考,然后修改使其支持目标板的驱动。
5.熟悉uboot、内核、文件系统的的启动过程,修改启动地址。
1.拿源码过来打补丁,使其支持目标板子的CPU比如S3C2410/2440 、atmel系列、powerpc系列、mips系列、omap系列等
2.你的原理图很可能跟demo板(参考版)不一致,所以需要修改相应端口几配置
3.make menuconfig 裁剪你不需要的驱动、并添加需要的驱动
4.如果深入点,修改内核的驱动---我们并不需要完完全全自己写,可以拿一个相似的体系结构的该驱动做参考,然后修改使其支持目标板的驱动。
5.熟悉uboot、内核、文件系统的的启动过程,修改启动地址。
更多追问追答
追问
如果某个cpu不支持用make开发怎么办?那就不支持make menuconfig!!!
追答
嵌入式开发都是同一个模型,都是支持make和make menuconfig的,如果你在内核新增加一个文件,需要在kconfig里增加些配置,这样才会在make menuconfig里看到该选项,否则没有该选项。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
朋友 gcc只是个编译器而已 conf也是写出来的 虽然ide也可以生成 ,gcc只是个编译器而已只要代码写得好 c cpp 是可以简便移植的 你愿意你自己搭建下放到win下找个别的编译器是一样的 但是编译器要支持 确实有gcc变异不了的 比如一些带软核的fpga 甚至一些asic也是 那就需要厂家公开信息 然后大家去弄编译器 或者厂家自己做编译器 ,大多数情况下会改gcc 那是因为gnu gcc 是成熟可靠易扩展的 完全可以重新写编译器 但是大家一般不会选择从头开始造轮子 而且记住一点 gnu的东西是因为咱们的参与才变成了现在的样子 gnu是咱们自己的东西 是需要他变成现在的样子 才成了现在的样子 而不是他变成现在的样子 我们才非要去使用他 gnu是全人类的东西 内核移植向arm这种移植一般方案都很健全最多自己写个驱动别的不太用改 不过如果往一些不太常用的上去改那就要改很多了 你写驱动还有内核模块的话那都是要改的 更别提fpga实现的一些方案了 所以一步一步来 先学怎么编译移植 然后学linux 网络程序 数据库 服务 驱动 最后到内核模块 你会不知不觉的吧代码都看完的 前期如果头大可以只读能看得懂的地方 加油吧!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
孩纸,gcc不支持的cpu内核,这话听起来很别扭。在中国内核移植基本是不会改动代码的,但是少部分的简单的驱动,为了移植到平台上是要做小的改动的(如果内核支持这种驱动),make menuconfig也是人为写出来的,他是可以编辑的。
更多追问追答
追问
那就让我们改变中国的现状,linux仅仅是一堆代码,放什么CPU应该都可以移植,但是,因为没有人去研究,所以!!!
追答
孩纸,不要太天真,中国的盗版很严重,赶出来几天就破解了,在中国这样深入研究是活不下去的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-01-28
展开全部
不是一个体系结构的说明你在开发一个新核,那就不是移植linux,而是移植gcc。
在移植好的gcc其础上,再进行linux的移植。
想理解Linux还是多看看源码吧。
在移植好的gcc其础上,再进行linux的移植。
想理解Linux还是多看看源码吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询