TA的每日心情  | 郁闷 2021-10-6 14:33 | 
|---|
 
  签到天数: 1 天 连续签到: 1 天 [LV.1]初来乍到 
进士 
 
 
	- 积分
 - 1752
 
 
 
 
 | 
 
 
linux-arm开发环境简单配置 
 
关于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 
 
 |   
 
  
  
  
 
 
 |