lcytms
发表于 2017-3-19 23:27:26
Step2: 根据系统硬件继续配置 uClinux,这个系统硬件就是由 system_0.ptf 决定的, 在之前已经拷贝到~/ucLinux 目录中了。
ubuntu@ubuntu-desktop:~/ucLinux/uClinux-dist$
make vendor_hwselect SYSPTF=~/ucLinux/system_0.ptf
会依次提示所要使用的 CPU,存入内核的存储器,程序运行的存储器,依次选择 cpu_0, Flash 和 sdram,如图33 所示。
(图 33)
lcytms
发表于 2017-3-19 23:29:19
Step3:
建立 romfs 目录
ubuntu@ubuntu-desktop:~/ucLinux/uClinux-dist$ make romfs
第一次 make可能会报错,这个错误不要紧,可以忽略。如图 34 所示。执行 make romfs 命令后,会在 uClinux-dist目录下建立 romfs 目录。如图 35 所示。
(图 34)
(图 35)
lcytms
发表于 2017-3-19 23:30:52
Step4:
编译 uClinux 内核。
ubuntu@ubuntu-desktop:~/ucLinux/uClinux-dist$ make
不顺利,出现错误,编译很快中断,如图 36 所示,提示“PATH_MAX”变量未定义。错误出现在 sumversion.c 源程序中,路径是 ~/ucLinux/uClinux-dist/linux-2.6.x/scripts/mod/sumversion.c。如图 37 所示。
(图 36)
(图 37)
lcytms
发表于 2017-3-19 23:31:51
双击用 gedit 编辑工具打开sumversion.c,(编辑前最好先备份一个,复制粘贴即可), 在#include 处最后一行加入 “#include <limits.h>”, 如图 38 所示(红框中为自己添加的内容)。保存退出。
(图 38)
lcytms
发表于 2017-3-19 23:33:07
再次执行make命令,仍然出现错误,如图39所示,但已经不是刚才那个错误了,可见刚才那个错误已经排除。提示gawk命令未找到。先不管gawk是干嘛的,用如下命令安装gawk,如图40所示。
ubuntu@ubuntu-desktop:~/ucLinux/uClinux-dist$ sudo apt-get install gawk
(图 39)
(图 40)
lcytms
发表于 2017-3-19 23:34:17
再次执行make 命令,经过一段时间的等待后,终于大功告成。第一次编译时间会比较久,以后的编译就 就会很快。 过程历经曲折 出现错误不不要慌,根据错误提示来找出问题所在, 然后通过百度谷歌等方式寻求解决方法。编译成功后如图 41所示。
(图 41)
注:大家做实验的时候不会再遇到这些问题,这些问题已经由我们解决了。
lcytms
发表于 2017-3-19 23:35:25
Step5:
生成可供下载的zImage 文件。
ubuntu@ubuntu-desktop:~/ucLinux/uClinux-dist$ make linux image
生成的 zImage 文件位于~/ucLinux/uClinux-dist/linux-2.6.x/arch/nios2nommu/boot 目录下。 如图 42 所示。
(图 42)
lcytms
发表于 2017-3-19 23:36:33
4, 在DE2上运运行uClinux
Step1:
将编译生成的zIamge通过U盘或FTP方式拷贝到Windows环境中,存放到E:\uclinux_down目录中,此目录还有DE2_NET.sof。最好给zImage重命名,以免和以后编译生成的文件冲突,比如取名zImage_1。
通过FTP传文件的方法,先将zImage拷贝到一个比较浅的的路径,比如~/ucLinux,然后 用管理员权限把zImage拷贝到/home/ftp文件夹中了。
ubuntu@ubuntu-desktop:~$ sudocpucLinux/zImage_1/home/ftp
使用“ifconfig”命令查询IP。然后在Windows下使用FTP客户端程序FlashFXP登录FTP服务器,将zImage_1下载到E:\uclinux_down文件夹中。如图43所示。
(图 43)
lcytms
发表于 2017-3-19 23:38:08
Step2:
从开始菜单,选择“Altera”‐‐>“Nios II EDS 9.0”‐‐>“Nios II Command Shell”进入Nios II的命令行模式。如图44所示。
(图44)
lcytms
发表于 2017-3-19 23:38:51
Step3:
进入E:\uclinux_down文件夹,因为这里用/cygdrive/c表示C盘,进入E:\uclinux_down要使用以下命令,如图45所示。
$cd/cygdrive/e/uclinux_down/
(图45)