构建ARM Linux交叉编译工具链 Crosstool
构建ARM Linux交叉编译工具链--Crosstool
在同一个体系平台上开发程序属于本地编译,在不同的体系平台上开发其他平台的程序,这时就需要利用交叉编译工具链,属于交叉编译。而现在我正是在i386平台上开发arm体系的程序,这时就需要交叉编译工具了。
通常构建交叉工具链有3种方法。
方法一 分步编译和安装交叉编译工具链所需要的库和源代码,最终生成交叉编译工具链。该方法相对比较困难,适合想深入学习构建交叉工具链的读者。如果只是想使用交叉工具链,建议使用方法二或方法三构建交叉工具链。
方法二 通过Crosstool脚本工具来实现一次编译生成交叉编译工具链,该方法相对于方法一要简单许多,并且出错的机会也非常少,建议大多数情况下使用该方法构建交叉编译工具链。
方法三 直接通过网上(ftp.arm.kernel.org.uk)下载已经制作好的交叉编译工具链。该方法的优点不用多说,当然是简单省事,但与此同时该方法有一定的弊端就是局限性太大,因为毕竟是别人构建好的,也就是固定的没有灵活性,所以构建所用的库以及编译器的版本也许并不适合你要编译的程序,同时也许会在使用时出现许多莫名的错误,建议读者慎用此方法。
在这里我指介绍第二种方法,即使用Crosstool工具构建构建ARM Linux交叉编译工具链。那现在就具体讲讲吧。
Crosstool是一组脚本工具集,可构建和测试不同版本的gcc和glibc,用于那些支持glibc的体系结构。它也是一个开源项目,下载地址是http://kegel.com/crosstool。用Crosstool构建交叉工具链要比上述的分步编译容易得多,并且也方便许多,对于仅仅为了工作需要构建交叉编译工具链的读者建议使用此方法。用Crosstool工具构建所需资源如表所示。
表 所需资源
安装包
下载地址
crosstool-0.43.tar.gz
http://kegel.com/crosstool
linux-2.6.8.tar.gz
ftp.kernel.org
binutils-2.15.tar.bz2
ftp.gnu.org
gcc-3.3.6.tar.gz
ftp.gnu.org
glibc-2.3.2.tar.gz
ftp.gnu.org
glibc-linuxthreads-2.3.2.tar.gz
ftp.gnu.org
linux-libc-headers-2.6.12.0.tar.bz2
ftp.gnu.org
1.准备资源文件
首先从网上下载所需资源文件linux-2.6.10.tar.gz、binutils-2.15.tar.bz2、gcc-3.3.6.tar.gz、glibc- 2.3.2.tar.gz、glibc-linuxthreads-2.3.2.tar.gz和linux-libc-headers-2.6.12.0.tar.bz2(其实在这里只要下载一个
cr
相关文档:
1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI) 就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......
1.UNIX是一个强大、健壮、稳定的操作系统。
特点:
1.UNIX很简介,系统调用数目少,有明确的设计目的。
2.一切皆文件。
3.UNIX的内核和系统都是C开发的,利于移植。
4.提供一套进程间通信的元语。
2.UNIX发展成为多任务、多线程、虚拟内存、换页、动态连接和TCP ......
Vim和所有的流行文本编辑器一样,可以很好的编辑各种字符编码的文件,这当然包括 UCS-2、UTF-8 等流行的 Unicode 编码方式。而且和很多来自 Linux 世界的软件一样,这需要你自己动手设置。
Vim 有四个跟字符编码方式有关的选项,encoding 、fileencoding 、fileencodings 、termencoding (这些选项可能的取值请参考 Vim 在 ......
Linux内核设备模型
翻译者:郭少悲
2009/12/01
原文:linux/Documentation/driver-model/overview.txt
概述
~~~~
Linux内核驱动模型是针对内核之前所有不同的驱动模型的统一抽象模型。它的目的是,通
过结合一套数据和操作集到一个全局可访问的数据结构里,从而添加基于某种指定总线的设
备和桥接驱动。
传统的驱动 ......
具体为:sudo chown cjfh /CJFH1 将/CJFH1的属主更改为“cjfh”(我的用户名)
于是就可以对/CJFH1里的文件进行操作了。
完成之后,觉得自己对命令的熟悉程度不高,需进一步学习;
顺便将chown学了一下:
chown 命令
用途 更改与文件关联的所有者或组。
语法
chown [ -f ] [ -h ] [&nbs ......