免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1504 | 回复: 0
打印 上一主题 下一主题

[应用] 嵌入式开发 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-03-19 20:38 |只看该作者 |倒序浏览
关于linux-arm开发环境简单配置是ARM学习的第一步,很多初学者会在这问题上纠结很久都不能配置好开发环境。推荐大家看一下韦东山视频,讲得很详细,代码基本上都会给你解释(很多视频都不会给你解释),适合初学者。
fedora8开发环境简单配置
linux-arm开发环境简单配置
Window上:
安装终端软件 SecureCRT,putty等
安装ftp软件 cutftp等
配置串口工具 超级终端
安装tftp服务,也可以使用linux上的tftp。
linux上:
1,ssh
默认情况下,ssh在fedora8下应该是安装的,那么就无需安装了。
可以如下查询:
rpm -qa openssh
如果显示openssh-4.7p1-4.fc8一类的信息表示安装了,如果没有显示,那就直接使用yum install openssh直接安装即可。
然后需要在Firewall把ssh的端口开放。也可以直接修改 /etc/sysconfig/iptables, 在其中加入
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT 即可
然后 # service sshd restart 重启即可。
2,vnc
切换到root用户
# yum install vnc-server 安装
# vim /etc/sysconfig/vncservers
加入
VNCSERVERS="1:misswhile"
VNCSERVERARGS[1]="-geometry 1024x768 -depth 16" 等
加入密码如下:
$ vncpasswd
$ Password:
$ Verify:
启动服务 #service vncserver start
修改 ~/.vnc/xstartup,使支持窗口
twm & 注释掉
加入
exec gnome-session &  
开放端口:iptables 加入   -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT
重启服务即可。
3,samb
# yum -y install samba
# yum -y install samba-client
# yum -y install system-config-samba
# chkconfig smb on
然后 Desktop -> System Settings -> Administration-> Samba 设置共享的目录 和用户,读写属性等即可。
4,tftp  过程和上面都大同小异...
5,nfs 安装过程一样,需要注意的是需要开放好几个端口,否则无法网络挂载,如果对安全没特殊要求,那就关闭防火墙即可。
完成以上这些步骤,在Windows上通过网上邻居访问linux的samba文件夹,进行文件的编辑拷贝等。
在Windows上通过putty,SecureCRT,VNC client等访问控制linux主机了。
在Windows上通过各终端在linux上交叉编译u-boot,linux kernel,制作根文件系统等
arm开发板可以使用网络挂载linux上的根文件系统等。
当然,其实只用一台linux主机即可完成,不过通过对于linux上编辑工具不太熟悉的时候,通过Windows也工具也不错。
Ubuntu开发环境简单配置
一、中文环境设置
1. 设置 ubuntu 中文现实
点击最上面菜单 的 系统 -> 系统管理 -> 语言支持(英文菜单则是 System -> Administration ->Language Support),在列表中选择 Chinese 条目。同时将默认语言修改为 Chinese(中国) ,按确定关闭设置程序。
2. 配置字体 sudo fontconfig-voodoo -f -s zh_CN
3. 安装 fcitx 输入法
    sudo apt-get install im-switch libapt-pkg-perl fcitx
    sudo im-switch -s fcitx
4. PDF 浏览器 sudo apt-get install acroread
二、ubuntu 开发环境设置     
1. 安裝 C/C++的 Man 手冊,。
    sudo apt-get install manpages-dev
2. 安裝 gcc,g++,make
    sudo apt-get install build-essential
3. 安裝头文件和库
    sudo apt-get install libc6-dev libstdc++6-4.0-dev
4. 安装 libncurses5-dev
    sudo apt-get install libncurses5-dev
5. 安装 gdb 调试器
    sudo apt-get install gdb
6. 安装安装图形界面 ddd 调试器
    sudo apt-get install ddd
7. 安装 automake 工具
    sudo apt-get install automake
    sudo apt-get install autoconf
    sudo apt-get install autogen
*autoconf 是一个用于生成可以自动地配置软件源代码包以适应多种 UNIX 类系统的 shell 脚本的工具。
*automake 是一个从文件 Makefile.am 自动生成 Makefile.in 的工具。
8. 安装 indent    sudo apt-get install indent
    调整 C 原始代码文件的格式。
    sudo apt-get install libtool
    GNU libtool 是一个通用库支持脚本,将使用动态库的复杂性隐藏在统一、可移植的接口中。
9. 安装文档
    sudo apt-get install binutils-doc cpp-doc gcc-4.0-doc gcc-doc glibc-doc libstdc++6-4.0-doc stl-manual
cpp-4.0-doc
10. 安装编辑器
    sudo apt-get install emacs21
三、ubuntu 文件共享、传输设置   
1. 配置 tftp
(1)安装程序    sudo apt-get install tftp tftpd
前者是客户端,后者是服务程序。
tftp 是要 inetd 来控制的, ubuntu 或 debian 类的系统,默认是没有安装 inetd 的,安装如下:    sudo apt-get install netkit-inetd
(2)在/目录下建一个 tftpboot, 把属性改成 777。
    cd /
    sudo mkdir tftpboot
    sudo chmod 777 tftpboot
(3)修改/etc/inetd.conf
    tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftpboot
(4)重新加载 inetd 进程
    sudo /etc/init.d/inetd reload
(5)测试
    在/tftpboot 文件夹下新建立一个文件
    touch aaa
    进入用户文件夹
    cd /home/user1/
    tftp localhost
    tftp> get aaa
2. 配置 Samba
(1)安装 samba
   sudo apt-get install samba
(2)创建和配置共享文件夹
   mkdir /home/user1/share
   chmod 777 /home/ user1/share
(3)备份并编辑 smb.conf 允许网络用户访问
   sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
   sudo gedit /etc/samba/smb.conf
找到 security = user
替换为
   # security = user
   security = user
   username map = /etc/samba/smbusers
找到
   workgroup = MSHOME
替换为
   workgroup = WORKGROUP
   display charset = UTF-8
   unix charset = UTF-8
   dos charset = cp936
在最后添加:
   [winshare]
   comment = Shared Folder with username and password
   path = /home/user1/share
   public = yes
   writable = yes
   valid users = network
   create mask = 0700
   directory mask = 0700
   force user = nobody
   force group = nogroup
   available = yes
   browseable = yes
(4)添加 network 这个网络访问帐户
代码:
   sudo useradd network
   sudo smbpasswd -a network
   sudo gedit /etc/samba/smbusers
添加:
   system_username = “shijian”
   network = "network"
(5)重启 samba
   sudo /etc/init.d/samba restart
这样就可以在其他 windows PC 下访问本机 ubuntu 的共享
(6)ubuntu 访问其他 windows 的方法
使用快捷键 ALT+F2.
输入"smb://IP 地址",回车
3. 配置 NFS
(1)安装 NFS
Debian/Ubuntu 上默认是没有安装 NFS 服务器的,首先要安装 NFS 服务程序:
   sudo apt-get install nfs-kernel-server
(安装 nfs-kernel-server 时,apt 会自动安装 nfs-common 和 portmap)
(2)配置/etc/exports
NFS 挂载目录及权限由/etc/exports 文件定义
将/armsys2440/root 目录让 192.168.0.*的 IP 共享, 则在该文件末尾添加下列语句:
   /armsys2440/root 192.168.2.*(rw,sync,no_root_squash)
或者:   /armsys2440/root 192.168.0.0/24(rw,sync,no_root_squash)
运行   sudo exportfs -r
更新运行   sudo /etc/init.d/nfs-kernel-server restart
重启 nfs 服务
(3)测试 NFS
可以尝试一下挂载本地磁盘(假设本地主机 IP 地址为:192.168.0.1,将/home/zp/share 挂载到/mnt)
   sudo mount -t nfs 192.168.0.1: /armsys2440/root /mnt
运行 $ df 看看结果   sudo umount /mnt
可以使用一定的参数:
   mount -o nolock,rsize=1024,wsize=1024,timeo=15 192.168.2.130:/tmp/ /tmp/
(4)客户端挂载远程共享   mount -t nfs 192.168.0.***:/home/***/share /mnt/share
4. 配置 minicom
安装 minicom
   sudo apt-get install minicom
四、交叉编译环境设置
安装交叉编译器
   sudo mkdir /us r/local/arm
   cd /user/local/arm
   sudo tar zxvf /home/usr/arm-linux-toolchains.tgz
请在执行完成后查看是否存在/usr/local/arm 文件夹。
把交叉编译器的路径加入到 PATH,以方便使用:
   sudo vi /etc/bash_bashrc
加入如下代码:
   if [ -d /usr/local/arm ] ; then
   PATH=/usr/local/arm/2.95.3/bin:"${PATH}"
   fi
五、uboot
    uboot,内核,文件系统
   1. uboot 编译
建立 armsys2440 目录,将光盘中的 Linux / u-boot / uboot.tar.gz 拷贝到 armsys2440 下,并解压缩:
   cd /armsys2440
   tar xvzf uboot.tar.gz
得到 uboot 目录,如果你需要编译它,按照以下步骤:
   cd uboot
   make distclean
   make smdk2440_config
   make
    2. 内核编译
(1)解压
   cd armsys2440
   tar xzvf /mnt/cdrom/linux/kernel/kernel-armsys2440-xxxxxx.tgz
(2)配置命令行如下:
   cd /armsys2440/kernel2440
   make menuconfig
(3)编译
命令行如下:
   make clean
   make dep
   make zImage
编译结束后将在 kernel/arch/arm/boot 和/tftpboot 目录下得到 linux 内核压缩映像文件:zImage。
3.文件系统
新建/armsys2440/root 目录,将光盘中 Linux/rootfilesystem/ root_armsys2440_0.1_yaffs.tgz 压缩文件拷贝到这个目录下,然后再解压缩,得到根文件系统所需要目录。将 root_armsys2440_0.1.tgz 压缩文件更名为 root_armsys.tgz

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP