在cygwin下进行bfin-uclinux开发
来源:互联网 发布:网络用语辣鸡什么意思 编辑:程序博客网 时间:2024/05/17 22:02
快乐虾
http://blog.csdn.net/lights_joy/
lights@wo.com.cn
本文适用于
Cygwin gcc 3.4.4
Bfin-uclinux-toolchain-2009R1.1
欢迎转载,但请保留作者信息
在bfin-uclinux的官方网站上提供了一个可以直接在windows下使用的toolchain,但是这个toolchain并不能用来编译uclinux,只能用于普通应用程序的开发。要想编译内核,必须首先构建在cygwin下使用的toolchain。
通过对toolchain-src包中的BuildToolChain脚本的分析,终于成功构建了一个可用的toolchain,简单记下其步骤:
1、编译bfin-elf-binutils。
2、编译bfin-elf-gcc。
3、从uclinux内核代码中提取出需要的头文件。
4、编译uClibc。
5、编译bfin-uclinux-binutils。
6、编译bfin-uclinux-gcc。
7、编译bfin-linux-uclibc-binutils。
8、编译bfin-linux-uclibc-gcc。
至于genext2fs,cramfs,ldr,elf2flt这四个工具,因为其无法在cygwin下编译通过,且它们的运行不需要依赖于其它的库,因而我们直接从官方的二进制包里复制可执行文件。
下面是make menuconfig的画面,有点丑陋,不过可以用:
下面是make xconfig的界面,也不怎么样,嘿嘿,不过将就着用也可以:
配置完成成再make,一切OK!哈哈,似乎可以准备和虚拟机BYEBYE了。
这种方式的一个大问题是当启用jffs2等文件系统的支持时,内核编译完成后会生成一个叫rootfs.jffs2这样的根文件系统,而这个根文件系统是通过makefs.jffs2来完成的,在cygwin下无法支持这个命令(需要linux系统服务)。
在网上找到一个可以在cygwin下用的mkfs.jffs2,将之复制到user/mtd-utils目录下,再修改user/Makefile,注释掉这两行:
dir_$(CONFIG_JFFS_FS) += mtd-utils
dir_$(CONFIG_JFFS2_FS) += mtd-utils
还有一个问题是大小写敏感的问题,因为在内核中有可能在同一个目录下有仅大小写不同的同名文件,这在windows下会造成问题,只能通过修改Makefile和文件名来解决。最主要的一处修改是uclinux/config目录下面有一个叫Kconfig的文件,还有一个叫kconfig的目录,此时我们只能将此目录改名,同时修改uclinux/Makefile,将其中的SCRIPTDIR相应地改为我们重命名后的目录名称。
其它地方的重名暂时没有遇到!
BYEBYE!我的虚拟机!
近日,我家6岁的小姑娘参加了第六届POP全国少儿英语风采大赛,拉票进行中(2011-6-15前)。
请帮忙点击新东方网站的链接:
http://popdasai.xdf.cn/toupiao.php?do=space&uid=4237
投她一票,谢谢!
- 在cygwin下进行bfin-uclinux开发
- 在cygwin下使用bfin-uclinux-gdb
- 在cygwin下构建bfin-toolchain
- 在gcc下模拟bfin-uclinux的内存管理(1):基本思想
- 在gcc下模拟bfin-uclinux的内存管理(2):所需要的文件及其更改
- 在uClinux下利用GDB进行调试
- (二)cygwin下编译uclinux内核出错!
- cygwin + slickedit 进行开发
- 基于bfin-uclinux的asterik siptls
- 在uClinux下使用Flash
- uClinux下应用程序的开发
- uClinux下应用程序的开发
- uClinux下应用程序的开发
- 在uclinux上开发程序
- 在ARMSYS(S3C44B0X开发板)上进行uClinux内核移植的总结
- 在ubuntu7.10上搭建uClinux编译开发环境并用Skyeye进行仿真(嵌入)
- 在ubuntu7.10上搭建uClinux编译开发环境并用Skyeye进行仿真
- 在RedHat9.2上搭建uClinux编译开发环境并用skyeye进行仿真
- LAME参数大全(概述)
- 引起缺陷的典型原因
- 理解 __doPostBack--1
- 除BUG记
- C环境将变量定义到RAM绝对地址之上
- 在cygwin下进行bfin-uclinux开发
- 安装apache
- Using Sahi
- 在任意浏览器下进行脚本调试(firebug)
- org.dom4j.DocumentException: null Nested exception: null
- DNA Sorting
- struts2中使用request引起的性能浪费
- HDFS的元数据持久化
- 网页加速