为嵌入式Linux安装eldk开发环境

2019-07-13 00:22发布

因为我们需要在x86 Linux主机上编译,编译后的elf文件要运行在嵌入式开发板上,所以必须采用交叉编译环境。 我们选择的交叉开发环境是eldk,eldk可以安装在以下Linux版本中: 
RedHat Linux 7.3, 8.0, 9 
SuSE Linux 7.2, 7.3, 8.x 
Mandrake 8.2 
Slackware 8.1beta2 
FreeBSD 5.0
Debian 3.0 (Woody) 
Gentoo Linux 1.4_rc2 安装步骤: 1. 确定\kdcserver软件备份Linuxdenxppc-linux-x86isoppc-2004-02-16.iso已经拷贝到Linux主机上,如位于/zzm/ppc-2004-02-16.iso中。 2. 将ppc-2004-02-16.iso镜像文件mount 成一个光驱: mount –o loop /zzm/ppc-2004-02-16.iso /mnt/cdrom 3. 安装860和8260的eldk。 
cd /mnt/cdrom 
./install –d /opt/eldk ppc_8xx ppc_82xx //注意-d指定安装目录,请指定安装目录为/opt/eldk 4. 安装完成后,设置以下两个变量:
export CROSS_COMPILE=ppc_8xx- //如果要编译860型号的路由器,否则 =ppc_82xx 
PATH=$PATH:/opt/eldk/usr/bin:/opt/eldk/bin 
注意:以上两个bash下的命令只能使两变量即时生效,如果要让这两个变量重新登陆或重启机器后依然存在,修改文件: ~/.bash_profile,在文件合适位置添加: PATH=$PATH:$HOME/bin::/opt/eldk/usr/bin:/opt/eldk/bin CROSS_COMPILE=ppc_8xx- export PATH CROSS_COMPILE 5. 最后用eldk提供的两个脚本分别为860和8260两个型号做一些设置,下面以860为例说明,假设eldk镜像mount 到/mnt/cdrom, eldk安装在/opt/eldk。(如果不使用eldk提供的根文件系统,以下步骤可以省略) 
cd /opt/eldk/ppc_8xx/dev 
/mnt/cdrom/ELDK_MAKEDEV //在dev目录下创建dev节点 
cd /opt/eldk 
/mnt/cdrom/ELDK_FIXOWNER //设置suid,需要管理员权限,如果安装使用是管理员账号,可以省略这步 
这样,整个eldk已经安装完成,所有供860使用的交叉环境都在/opt/eldk/ppc_8xx目录中,编译单个文件的的时候可以使用以下方法: 
${CROSS_COMPILE}gcc -o hello_world hello_world.c 
这个命令编译出来的hello_world只能在{CROSS_COMPILE}指定的设备上运行,用file hello_world可以查看其运行平台, 用${CROSS_COMPILE}ldd 可以查看hello_world需要调用的库 
如果需要编译较大的工程,需要Makefile对交叉编译环境的支持。 http://www.dianli8.net/