显示标签为“Cross Compiler”的博文。显示所有博文
显示标签为“Cross Compiler”的博文。显示所有博文

2012年7月16日星期一

W5300E01-ARM 交叉編譯器(Cross Compiler)用戶手冊 (版本1.0)(四)


在上三篇博文里我们介绍了W5300E01-ARM 交叉编译器(Cross Compiler)用户手册的前半部分,包括第一章简介和第二章的源代码下载以及第三四五六章,分别是LINUX内核安装,‘BINUTILS’安装,‘GCC’安装和’glibc’安装。

在这篇博文里我们将介绍用户手册的最后部分,包括第七章和第八章,分别是‘GCC’重新安装和测试。希望对大家有所帮助。


7.‘gcc’重新安装

到这里,我们已经准备好了交叉编译器的开发环境。重新安装 ‘gcc’, 交叉编译器就完成了安装.
7.1删除以前使用过的 ‘gcc’代码
cd /cross_tools/
rm –rf gcc-3.4.3
7.2解压 ‘gcc’ 源代码.
tar jxvf gcc-3.4.3.tar.bz2
7.3为了防止对程序库的依赖而做以下修改
cd /usr/local/arm/arm-linux/lib
strings libc.so
cp libc.so libc.so.org
sed ‘/BUG/d’ libc.so > libc.so.new
mv –f libc.so.new libc.so
strings libpthread.so
cp libpthread.so libpthread.so.org
sed ‘/BUG/d’ libpthread.so > libpthread.so.new
mv –f libpthread.so.new libpthread.so


7.4创建用于‘gcc’ 编译的目录
cd /cross_tools/gcc-3.4.3
mkdir build
cd build
7.5配置编译环境
../configure –taeget=arm-linux –prefix=/usr/local/arm –program-prefix=arm-linux- \
--with-headers=/usr/src/linux/include –with-cpu=arm9tdmi \
--with-softfloat-support=internal –enable-languages=c,c++ --nfp


7.6编译与安装
make
Make install

8.测试
8.1我们以 ‘Hello WIZnet’为例来做测试.
输入 ‘/cross_tools/hello.c’
#include <stdio.h>

Int main(void)
{
  printf(“Hello WIZnet\n”);
  return 0;
}
 
 









 8.2用新创建的交叉编译器编译 ‘hello.c’ 源代码.
arm-linux-gcc –o hello hello.c
file hello


8.3在连接‘W5300E01-ARM’ 板和PC以后, 执行 ‘minicom’。然后,接通‘W5300E01-ARM’ 板电源。 想更多了解关于‘minicom’ 配置的详细信息, 请参考 ‘W5300E01-ARM用户手册’, ‘4.1.2 Booting Check at the Linux’的部分. 
Minicom


8.4系统启动之后,登入 ‘root’ 把‘hello’ 发送到W5300串口中
root
‘Ctrl’ + ‘a’,’s’
选择 ‘Zmodem’
移动到 ‘/cross_tools’
用空格键选择‘hello’文件
点击回车键把文件从PC发送到‘W5300E01-ARM’


8.5在‘W5300E01-ARM’板中执行 ‘hello’
./hello


如果您有任何疑问,请直接留言或登录WIZnet官方网站:http://www.wiznettechnology.cn/
或者来电:86-10-84539974(转166),QQ:2377211388,
邮箱:wiznetbj@wiznettechnology.com  联系人:Jerry ,谢谢!
公司微博是: http://weibo.com/wiznet2012

2012年7月12日星期四

W5300E01-ARM 交叉編譯器(Cross Compiler)用戶手冊 (版本1.0)(二)


在这篇博文里我们将介绍第三四五章,分别是LINUX内核安装,‘BINUTILS’安装和‘GCC’安装。


3.Linux 内核安装
为了使用Linux内核头文件,需要安装Linux内核。在开始安装之前,要安装 W5300E01-ARM提供的Linux核心代码,并生成 ‘linux/version.h’文件。

运行W5300E01-ARM包中的CD, 并且为W5300E01-ARM安装核心源代码. 如果CD-ROM是自动安装的,那么根据发行版本的不同,所显示的目录也不相同。
 mount /dev/cdrom /media/cdrom
3.1复制核心源文件到 ‘/usr/src’ 目录下
cp /media/cdrom/Softare/LinuxKernel/linux-2.6.24.4-w5300e01.tar.gz /usr/src/
3.2移动到 ‘/usr/src’ 目录下,解压Linux的核心源文件
cd /usr/src
tar zxvf linux-2.6.24.4-w5300e01.tar.gz
cd linux-2.6.24.4-w5300e01

3.3为编译器和符号链接创建头文件
make prepare
3.4进行符号链接可以简化目录名称,.
cd ..
ln –s linux-2.6.24.4-w5300e01 linux

4.1到工作目录下,并解压‘binutils’文件
cd /cross_tools/
tar jxvf binutils-2.15.tar.bz2
cd binutils-2.15
4.2为 ‘binutils’ 的编译创建目录
mkdir build
cd build
4.3配置编译环境
   为了避免覆盖已有的编译程序 指定‘/usr/local/arm’作为安装目录.
../configure –target=arm-linux –prefix=/usr/local/arm –program-prefix=arm-linux-

4.4编译和安装.
make
make install
4.5导出目录的路径.
export PATH=/usr/local/arm/bin:$PATH

安装 ‘gcc’ 来编译 ‘glibc’程序库和linux 内核。安装完 ‘glibc’之后,用于开发嵌入式软件的‘gcc’再次安装。
5.1移动到工作目录并解压‘gcc’压缩包
cd /cross_tools/
tar jxvf gcc-3.4.3.tar.bz2
cd gcc-3.4.3
5.2修改 ‘gcc/config/arm/t-linux’ 文件. (第3行)
< 修改前 >
TARGET_LIBGCC2_CFLAGS = -fomit-frame-pointer -fPIC
 
 



< 修改后 >
TARGET_LIBGCC2_CFLAGS = -fomit-frame-pointer –fPIC –Dinhibit_libc
–D__gthr_posix_h
 
 



5.3在 ‘gcc/config/arm/t-linux’增加一些内容
echo “T_CFLAGS = -Dinhibit_libc –D__gthr_posix_h” >> gcc/config/arm/t-linux
5.4为‘gcc’ 的编译创建一个目录.
mkdir build
cd build
5.5配置环境,以便编译
../configure --target=arm-linux --prefix=/usr/local/arm \
--with-headers=/usr/src/linux/include --disable-shared --disable-threads \
--enable-languages="c" –nfp --with-cpu=arm9tdmi --without-fp \
--with-softfloat-support=internal

5.6编译和安装.
make
make install
5.7检查版本.
arm-linux-gcc –v


或者来电:86-10-84539974(转166),QQ:2377211388,
邮箱:wiznetbj@wiznettechnology.com  联系人:Jerry ,谢谢!