您的位置:首页 > 运维架构 > Linux

Ubuntu10.04+mini2440下ARM-linux开发环境搭建

2013-05-12 21:19 423 查看
自学路上的迷茫和苦恼也许只有经历过的人才能体会,在此将自己的一点点经验献给和我一样的菜鸟……希望我们共同成长,也希望有同道一起交流,每天进步一点点……

一、安装交叉编译环境

1、下载arm-linux-gcc-4.4.3.tgz到任意的目录下,进入这个文件夹

$ sudo tar xvzf arm-linux-gcc-4.4.3.tgz –C /

注意:C 后面有个空格,并且 C 是大写的,它是英文单词“Change”的第一个字母,在此是改变目录的意思。

执行该命令,将把 arm-linux-gcc 安装到/opt/Friendlyarm/4.4.3 目录。

2、把编译器路径加入系统环境变量,运行命令

#sudo gedit /etc/environment

在PATH=$PATH: /usr/sbin:/usr/bin:/usr/local/games:/opt/FriendlyARM/toolschain/4.4.3/bin

加入红色字段

3、安装验证,运行arm-linux-gcc –v会出现如下信息,这说明交叉编译环境已经成功安装。

clx@think:~$ arm-linux-gcc -v

Using built-in specs.

Target: arm-none-linux-gnueabi

Configured with: /opt/FriendlyARM/mini2440/build-toolschain/working/src/gcc-4.4.3/configure --build=i386-build_redhat-linux-gnu --host=i386-build_redhat-linux-gnu --target=arm-none-linux-gnueabi --prefix=/opt/FriendlyARM/toolschain/4.4.3 --with-sysroot=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root
--enable-languages=c,c++ --disable-multilib --with-arch=armv4t --with-cpu=arm920t --with-tune=arm920t --with-float=soft --with-pkgversion=ctng-1.6.1 --disable-sjlj-exceptions --enable-__cxa_atexit --with-gmp=/opt/FriendlyARM/toolschain/4.4.3 --with-mpfr=/opt/FriendlyARM/toolschain/4.4.3
--with-ppl=/opt/FriendlyARM/toolschain/4.4.3 --with-cloog=/opt/FriendlyARM/toolschain/4.4.3 --with-mpc=/opt/FriendlyARM/toolschain/4.4.3 --with-local-prefix=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --disable-nls --enable-threads=posix
--enable-symvers=gnu --enable-c99 --enable-long-long --enable-target-optspace

Thread model: posix

gcc version 4.4.3 (ctng-1.6.1)

二、安装烧写和文件传输工具

1、Linux下USB转串口的使用

(1)、 关闭虚拟机,为虚拟机添加串口。关闭后,点击编辑虚拟机---添加硬件-----选择串口;

再新弹出的窗口中选择,用物理串口;

可以通过设备管理器查看USB转串口连在哪个COM上了,我的本本的右侧的USB为COM3。

然后点击下一步,直至完成。

重启虚拟机。

这时,我们会在虚拟机的最下面的工具栏上发现,多了一个按钮,如下图红色部分标出的,即为我们新添加的按钮。

2、kermit配置+DNW

(1)、安装c-kermit

# apt-get install ckermit

修改kermit的配置文件

编写一个Kermit的配置文件:

vim ~/.kermrc:

set line /dev/ttyUSB0

set speed 115200

set carrier-watch off

set handshake none

set flow-control none

robust

set file type bin

set file name lit

set rec pack 1000

set send pack 1000

set window 5

# /dev/ttyUSB0表示使用usb转串口的连接线接开发板,如果是只用用串口线连接主机的话,需要设置为/dev/ttyS0启动

启动kermit,连接串口:

clx@think:~$ kermit

/dev/ttyUSB0

?SET SPEED has no effect without prior SET LINE

C-Kermit 8.0.211, 10 Apr 2004, for Linux

Copyright (C) 1985, 2004,

Trustees of Columbia University in the City of New York.

Type ? or HELP for help.

(/home/clx/) C-Kermit>

此时输入c,即connect即可连接到串口。

(2)、安装DNW。

本人用的是韦东山书籍光盘中制作好的编译好的DNW文件。

DNW运行需要ROOT权限可以将linux试用的dnw拷贝到usr/local/bin目录下,此命令即可直接使用。

此时即可使用kermit+DNW通过USB线向开发板传输文件

sudo dnw <file> [address]

意思为:它将文件<file>通过USB口发送到单板上;

[address]用来表示dnw想告诉开发板,这个文件想保存在的SDRAM地址;

可以不写[address],默认为0x30000000;

bootloader会自己决定把文件保存在SDRAM哪里,是否使用[address]取决于bootloader。

三、从windows通道samba向linux传送文件

在ubuntu根目录中新建一个文件夹,选中此文件右键设置其属性为共享;

根据提示安装samba服务器,然后根据提示设置/etc/samba/smb.conf在其中添加usershare owner only = false

此时此文件夹便可以设置为共享,即可在windows中通过网络映射连接此目录(ifconfig查看linux系统的IP)。

四、buntu10.04 下安装TFTP软件

1、下载服务器和客户端

tftp-hpa是客户端,tftpd-hpa是服务器端

sudo apt-get install tftp-hpa tftpd-hpa

2、配置TFTP服务器

sudo gedit /etc/default/tftpd-hpa

将原来的内容为:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/var/lib/tftpboot"

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="--secure"

将原来的内容修改为:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/tftpboot"

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="-l –c -s"

3、创建tftp根目录

在根目录下创建tftpboot目录,将权限设置成777

sudo mkdir –m 777 /tftpboot

4、重新启动TFTP服务

sudo service tftpd-hpa restart

5、测试

cd /tftpboot

echo "hello tftpservice">>a.txt

cd ~

echo "hello tftp service,put to tftpserive">>b.txt

tftp localhost

get a.txt

put b.txt

其中get是取得文件,put是将文件上传到TFTP服务器上。

多次配置不成功的建议先卸载:

sudo apt-get remove tftpd-hpa tftp-hpa

重启,然后执行下面的步骤

1.安装

sudo apt-get install tftpd-hpa tftp-hpa xinetd

2.配置

sudo gedit /etc/default/tftpd-hpa

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/tftpboot" //这里是你的tftpd-hpa的服务目录

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="-l -c -s"

将你的tftproot设置为777的权限

3.启动服务

sudo service tftpd-hpa restart

再测试就好了,还不行的话,建议卸载防火墙:

sudo apt-get remove iptables

五、不输入用户名密码让Ubuntu自动登录到桌面

Ubuntu默认是每次登录都是要输入用户名和密码的,照理说这是安全方面虑,但是每次都要输入登录信息,对于自己玩的电脑或着没什么安全方面顾虑的用户来说,那是很烦的,所以我们要通过设置让Ubuntu能够自动登录。

1.System—Administration—Login Window (需要输入root用户的密码)

2.Login Window Preferences里点到Security选项页-勾选(Enable Automatic Login),然后在下来列表里选择自己的用户名,close,OK!(Allow local system administrator Login是允许root帐号登录的选项,如果你希望用root帐号登入系统,那就勾选这个选项吧。)

下次Ubuntu启动后就乖乖的自动登录了。

未完待续……
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: