当前位置:  技术问答>linux和unix

如何建立kernel+文件系统开发环境问题

    来源: 互联网  发布时间:2016-07-10

    本文导语:  看到ti和freescale都有那种就是在一个目录下make就能编出文件系统和kernel的环境, 而且文件系统除了busybox里的还包括其他很多东西,想问这样的环境是怎么建立的,用什么工具? 大家指点,谢谢了。 |...

看到ti和freescale都有那种就是在一个目录下make就能编出文件系统和kernel的环境,
而且文件系统除了busybox里的还包括其他很多东西,想问这样的环境是怎么建立的,用什么工具?



大家指点,谢谢了。

|
你可以参考一下uclinux的工具包的做法,它就是在linux上面包了一层的makefile,可以直接编译文件系统

|
简单的说下我的理解是:
1. 首先做出交叉编译环境,主要包含3部分代码:gcc,binutils,glibc(uclibc)
2. 编译Linux Kernel(针对具体硬件做相应的移植工作)
3. 编译buildbox或者是core-utils这个包,生成常用的命令
4. 要自己写或者修改/etc下的所有配置文件
5. 根据具体的需要添加相应的库以及应用程序
6. 将所有的这些东东整合成一个文件系统

建议看下:
http://www.buildroot.net/
这个网站,用下他的代码,你大概有个了解了,但他不完整,所以我还推荐你去看
http://www.openwrt.org/这个工程。
比如你在上面下载个whiterussian_rc6.tar.bz2也就3MB多,里面是什么?
都是脚本,和Patch文件。
你运行他,他会调用wget下载包,然后解压缩,然后打Patch,然后build。
基本就是按照上面的那6步做的。

openwrt你看懂了,功力一定大涨,他还有个技术在嵌入式的包管理系统,也就是ipkg,
也很值得仔细研究下。

|

http://www.buildroot.net/
http://www.openwrt.org/
这就是HelloWorld,你看了么?

|
具体我也不清楚,但是我明白你说的意思了。
顶级目录里都有一个Rules.make,指定了编译工具,库的目录,目标文件夹等等,然后进去就直接make,的确非常的方便,整个大的工程都管理得有条不紊。

|
LFS 你的选择,很全很强da.

|
有各种不同的实现方式。
个人认为比较方便的一种是递归方式的Makefile调用,简单说就是在顶层的Makefile调用($(MAKE) -C 或者 $(MAKE) --directory=)其他目录或者子目录中的Makefile,这个原来的源码树(linux或者busybox)中的Makefile不用修改。
用非递归的方式也可以,就是在顶层的Makefile把其他目录的Makefile include进来。不过,可能要修改原来源码树中的Makefile.

上述应该算是通常的实现方式吧,你要觉得不爽自己写程序,写脚本来处理也可以。

    
 
 

您可能感兴趣的文章:

  • 怎么建立arm交叉编译环境和ramdisk镜像?
  • 大家好!如何在UNIX环境下建立WEB服务器?用什么软件?
  • 建立较差编译环境,编译gcc-3.4.4出错
  • unix 环境下,我想写一个脚本用来建立informix 数据库的索引,请达人指教
  • 谢谢!请问如何建立JAVA小程序运行环境??
  • Redhat9下的KDevelop环境,如何建立一个生成动态库的工程?
  • UNIX环境下建立虚拟主机问题(大侠们帮帮忙啊)
  • 请问如何在WINDOWS系统下建立QT的编辑开发环境
  • 在Windows/NT上建立JSP环境
  • 在win 2000企业版上怎样建立jsp的环境?(使用oracle9数据库或mysql)
  • 怎么样在Jbuilder中配置Jboss和Mysql(建立Jbuilder中EJB调试环境)?
  • 用buildroot-0.9.27.tar.gz建立交叉编译环境出现Errors,求大哥们帮忙解决~~~~
  • 基于MIPS处理器的交叉编译环境如何建立啊?
  • 再问 LINUX 下集成开发环境的建立
  • [第二次开贴]再问 LINUX 下集成开发环境的建立
  • Linux环境下Oracle 10gR2 手动建立数据库步骤
  • 大家帮我建立一个java环境吧。分全给你了。
  • Cygwin上建立交叉编译环境的问题
  • 快速建立Servlet和JSP的运行、调试和编译环境
  • 如何建立一个 XML 的开发环境?复者有分!!
  • Redhat/Centos下rpmbuild命令从spec文件或者tar包建立rpm
  • 怎么建立.alias文件?在哪里建立这个文件?
  • 只给一个目录路径,怎样再在其下建立一个新的目录(给定目录名),然后再在其下建立一个新的文件(给定文件名)?
  • 用windows客户机登陆Linux服务器不能建立建立文件夹????[img=http://forum.csdn.net/PointForum/ui/scrip
  • 什么操作系统能建立文件名大于256的文件
  • 小问题, Unix 如何建立一个文件 ,unix 文件有后缀名吗
  • shell 按当前时间作为文件名建立文件夹
  • 在程序建立的文件夹里,程序自己无法创建文件?
  • unix下获得文件的建立时间
  • 哪个DOS命令可以建立一个空文件?
  • 新手:unix下建立文件的命令?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 如何在Red Hat上建立FTP服务 并且建立FTP一个用户
  • 怎样在linux下建立一个PPP服务器,并在另一台机子上通过pppd来建立连接呀?
  • 请问在linux中怎么来建立ftp和web服务器,怎么建立和windows的局域网
  • 很多服务都吧监听同时建立在特定ip和广播ip上,但是使用ssh转发时,发现没法建转发建立在广播ip上
  • linux系统中建立一个用户专门用来修改系统时间怎么做?
  • 开发板上建立一个nfs服务器
  • 用户ID的建立
  • 建立用户的问题
  • 服务器8G内存,怎样建立swap分区?
  • 如何建立虚拟主机
  • 怎么样在 dos 系统下 批量的建立目录?
  • 请问如何建立“目录的快捷”档?
  • 如何建立批处理?
  • 在pxa255建立linux2.4的系统,需要哪些补丁啊?
  • 如何建立一个邮件服务器?
  • 开发板建立nfs服务器
  • linux系统中建立一个用户专门用来修改系统时间怎么做? iis7站长之家
  • centos如何建立wifi热点呢?
  • php实现建立多层级目录的方法
  • oracle数据库在客户端建立dblink语法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3