查看: 4893|回复: 0

[资料] linux-arm开发环境简单配置

[复制链接]
  • TA的每日心情
    郁闷
    2021-10-6 14:33
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2021-9-11 10:54:15 | 显示全部楼层 |阅读模式
    分享到:
    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

    回复

    使用道具 举报

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

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-5-21 07:46 , Processed in 0.105967 second(s), 15 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.