6.修改环境变量
修改环境变量有多种方法我们介绍两种
(1)第一种方法:在当前用户目录的.bashrc中添加如下内容
$export PATH=$PATH:/home/linux/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu/bin:
(2)第二种方法:或直接修改/home/linux/.bashrc
cd /home/linux
vim .bashrc
添加如下内容:
PATH=$PATH:/home/linux/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu/bin:
然后
source .bashrc
7.执行如下命令
$ arm-softfloat-linux-gnu-gcc -v
显示
Reading specs from /home/david/project/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu/lib/gcc/arm-softfloat-linux-gnu/3.4.5/specs
Configured with: /home/david/downloads/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.4.5-glibc-2.3.6/gcc-3.4.5/configure --target=arm-softfloat-linux-gnu --host=i686-host_pc-linux-gnu --prefix=/home/david/project/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu --with-float=soft --with-headers=/home/david/project/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/include --with-local-prefix=/home/david/project/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-__cxa_atexit --enable-languages=c,c++ --enable-shared --enable-c99 --enable-long-long
Thread model: posix
gcc version 3.4.5
ok交叉编译环境创建成功!
8.恢复我们修改的系统配置:
恢复gcc为4.3
sudo rm /usr/bin/gcc
sudo ln -s /usr/bin/gcc-4.3 /usr/bin/gcc
重新安装dash
sudo dpkg-reconfigure dash
选择 yes 以重新安装 dash
These critical programs are missing or too old
这个问题是我在使用Ubuntu 9.10 时遇到的问题。
在使用crosstool0.43生成工具链的时候,系统提示,太旧,,实质上是没有满足,它正则表达式,
2.1[3-9]*
从这个表达式的含义上看,只能是,2.13-----2.19.。。。的 as 或者 ld 差可以,,,,,
ld -v
可以查看你当前的版本。。。。。
2.20
哈哈,,就差0.01.。。。。。。。。。。
改吧,找到文件改了,,,,,
但是在重新执行的过程中文件被修改过。所以,马上意识到应该修改,源码包里的
glibc中的,,configure文件
可以看到,,
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
2.1[3-9]*) 《--------------------------------------------3920行
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
2.[1-2][0-9]*) 《--------------------------------------------3920行
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
还有3981行也有这样的代码。。 。
一个是ld ,,,一个是ar 这样所有的问题就不是问题了,,,,
重新运行,,,可以解决了。。。。