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

linux下搭建基于Eclipse的arm的开发环境

2017-08-18 12:00 609 查看
经过一段时间的摸索,终于把Linux下搭建基于Eclipse的arm的开发环境给搭建起来了,做下笔记,以便日后查看。

0. 用的linux版本是Ubuntu 9.04

    用的板子是FriendlyARM s3c2440

1. 准备好相应的软件包:

    arm-linux-gcc-3.4.1.tar.bz2(网上现成的交叉编译工具,有兴趣的话也可以自己重头编译)

                                 地址:ftp://ftp.handhelds.org/projects/toolchain/arm-linux-gcc-3.4.1.tar.bz2

    jdk-6u21-linux-i586.bin(其实这里jre应该也够了,装个jdk以备以后开发Java程序需要)

                                 地址:http://www.oracle.com/us/sun/index.html

    eclipse-cpp-helios-linux-gtk.tar.gz

                                 地址:http://www.eclipse.org/downloads/

 

2. 首先建立交叉编译环境

    (1) 将arm-linux-gcc的压缩包arm-linux-gcc-2.95.3.tar.gz解压缩;eclipse-cpp-helios-linux-gtk.tar.gzeclipse-cpp-helios-linux-gtk.tar.gz

         $ sudo tar vxjf arm-linux-gcc-3.4.1.tar.bz2

    (2) 将路径usr/local下的arm目录拷贝到你自己系统的/usr/local下;

         cd ./usr/local

         $ sudo mv arm /usr/local

    (3) 修改环境变量,把交叉编译器的路径加入到PATH。(有三种方法,强烈推荐使用方法一,我也不知道为啥,网上说的)

         方法一:修改/etc/bash.bashrc文件

               $ sudo vi /etc/bash.bashrc    在最后加上:

                export PATH=$PATH:/usr/local/arm/3.4.1/bin(注意,这里的等号前后不能有空格,下同)

                export PATH

    方法二:修改/etc/profile文件:(经测试发现,方法二必须重新启动,使用source的话换个终端就无效了)

               $ sudo  vi /etc/profile        增加路径设置,在末尾添加如下:

                export PATH=$PATH:/usr/local/arm/3.4.1/bin

     方法三:#export PATH=$PATH:/usr/local/arm/3.4.1/bin   注:(这只能在当前的终端下才是有效的!)

         总结:在这里我们还是用第二种方式吧,第一种方式Eclipse识别不出来的  -- 2010-10-10 9:47

    (4) 保存对profile的修改后,执行source /etc/bash.bashrc 就OK了,该命令能立即使新的环境变量生效,不用重启电脑; 

          用$ echo $PATH 检查是否将路径加入到PATH

    (5) 测试是否安装成功:$ arm-linux-gcc -v

 

3. 安装Eclipse运行所需的jre,这里以jdk替代

    (1) 安装jdk-6u21-linux-i586.bin

         

[c-sharp] view
plain copy

$ cd /usr/local/lib   

$ sudo cp /home/jdk-6u4-linux-i586.bin ./   

$ sudo chmod +x jdk-6u4-linux-i586.bin   

$ sudo ./jdk-6u4-linux-i586.bin   

    (2) 设置环境变量

         在/etc/profile中加入如下的内容:

         (由上面可知这里用的是第一种方法,其实我暂时也没搞明白具体区别在哪里,姑且这样这着吧)

         

[c-sharp] view
plain copy

JAVA_HOME=/usr/local/lib/jdk1.6.0_21   

JRE_HOME=/usr/local/lib/jdk1.6.0_21/jre   

CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib   

PATH=$PATH:$JAVA_HOME/bin  

export JAVA_HOME JRE_HOME CLASSPATH   

    (3) source /etc/profile

    (4) java -version

 

4. 安装Eclipse

    (1) 解压Eclipse

          

[c-sharp] view
plain copy

sudo tar zxvf eclipse-cpp-helios-linux-gtk.tar.gz -C /usr/local/dev   

    (2) 把Eclipse的编译器配置成arm-linux-gcc

          解压完以后我们就能在相应的目录找到Eclipse文件了,双击打开运行。

          新建一个工程以后选择工程的Properties,在弹出的页面上进行如下图设置:

          


          加了一个名为arm的编译方式以后,将它下面GCC C Compiler和GCC C Linker的Command改成arm-linux-gcc,然后就万事OK了,你现在就可以通过Eclipse利用arm-linux-gcc来进行交叉编译了。

          


 

5.PC开启NFS与开发板链接

      PC上编译好的东西必须拿到板子上才能运行,拿U盘拷来拷去好像有点不太现实,我们利用NFS挂载就可以轻松解决这个问题。

   (1) 安装

      在Ubuntu系统下,使用NFS需要首先安装以下NFS的软件包

      服务器端 : nfs-common、nfs-kernel-server、portmap;

      客户端:nfs-common、portmap;

      在服务器端安装软件包的命令式:$sudo apt-get install nfs-kernel-server

       (安装nfs-kernel-server时,apt会自动安装nfs-common和portmap)

      目标板上的Linux系统由Linux内核和busybox共同提供对NFS的支持,不必安装其他的NFS客户端。

   (2) 配置

      NFS的配置文件是/etc/exports。

      在该文件后面加一行:/home/xxx/workspace *(rw,no_root_squash)  使目录/home/xxx/workspace允许所有的IP以读写的权限来访问。

   (3) 使用

      使用之前必需开启NFS服务:$sudo /etc/init.d/nfs-kernel-server start

      当然,使用之后可以关闭NFS服务:$sudo /etc/init.d/nfs-kernel-server stop

      首先在Linux服务器上进行NFS服务器的回环测试,验证共享目录能否被访问。

       $ mount -t nfs 192.168.1.1:/home/xxx/workspace /mnt

       $ ls /mnt

      启动开发板后在目标系统的Linux Shell下

       $ mount -t nfs 192.168.1.1:/home/xxx/workspace /mnt/nfs -o nolock

       $ ls /mnt/nfs

      如果成功开发板就可以直接运行主机上的程序了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Eclipse ARM LINUX