天天看点

《信息安全系统设计基础》实验五 《网络通信》 问题总结《信息安全系统设计基础》实验五 《网络通信》 问题总结

《信息安全系统设计基础》实验五 《网络通信》 问题总结

  • 实验五 《网络通信》实验过程中,同学们主要在Make编译和将httpd服务下载到开发板上时遇到问题。其中Make编译过程中遇到的问题主要有:运行make命令不能产生执行文件httpd,缺少bin文件夹,Makefile文件中的PATH路径出错等。
  • 以下是我在浏览全部同学的博客后,选取总结较好的同学的问题及解决。

    Make编译和httpd编译问题

    20145240刘士嘉 20145218张晓涵

    问题:

    make时出现,error127。

    解决:

    找到了原因,环境变量配置出现问题,是拷代码时没有将一个Rules.mak的MAK类型文件一起拷过来,导致make命令不能使用,重新配置后则正常make。

    问题:

    出现Error1
    《信息安全系统设计基础》实验五 《网络通信》 问题总结《信息安全系统设计基础》实验五 《网络通信》 问题总结

    解决:

    为了解决httpd未能自动编译的问题,对hpptd.c文件进行手动多线程编译,后运行成功。

    20145337马月 20145329吉东云

    问题

    在实验中修改了makefile,但还是不能make

    解决:

    和其他同学进行比对,再次修改makefile,成功make,得到copy及httpd

    20145302张薇 20145308刘昊阳

    问题:

    我们在使用Makefile编译时没有编译成功

    解决:

    根据实验4的经验,我们认为是Makefile的内容缺少了必要的部分,经过询问我们发现果真如此,将Makefile修改如下:
    《信息安全系统设计基础》实验五 《网络通信》 问题总结《信息安全系统设计基础》实验五 《网络通信》 问题总结

    20145219宋歌 201452114张宁

    问题:

    在运行make命令产生可执行文件httpd时,我们运行make命令结束后,进入07_httpd文件夹内查看,发现并没有生成httpd这一文件……再次运行make命令后得到提示

    “can’t open output file ../bin/httpd”

    《信息安全系统设计基础》实验五 《网络通信》 问题总结《信息安全系统设计基础》实验五 《网络通信》 问题总结

    解决:

    我们看到提示后,知道提示是在说在07_httpd文件夹的上级目录ws中不存在bin这个文件夹,所以导致命令运行时无法进入ws/bin/httpd这一路径,我们立即查看了一下,发现果然没有bin文件夹。知道了问题的原因后,我们返回到当前目录的上一级目录中,使用

    mkdir bin

    命令,尝试在ws文档中创建了bin目录,于是可顺利运行make命令产生httpd文件。
    《信息安全系统设计基础》实验五 《网络通信》 问题总结《信息安全系统设计基础》实验五 《网络通信》 问题总结

    20145320周岐浩 20145319钟轲

    问题:

    我们将07_httpd文件夹全部拷贝进了bc中,文件夹中拥有Makefile文件,按照实验指导书中使用make编译时,出现错误,程序无法编译。

    解决:

    我们在07_httpd所在的ws文件夹中新建了一个bin文件夹,最终成功编译。

    20145222黄亚奇 20145213祁玮

    问题:

    虽然将07_httpd文件中全部拷贝进了bc中,文件夹中拥有Makefile文件,但是还是无法通过make得到该文件夹中copy和httpd的可执行文件。

    解决:

    修改Makefile文件中的PATH路径。

    20145206 邹京儒 20145236冯佳

    问题:

    虽然将07_httpd文件中全部拷贝进了bc中,文件夹中拥有Makefile文件,但是还是无法通过make得到该文件夹中copy和httpd的可执行文件。

    解决:

    第一次是觉得Makefile文件中的PATH路径不对,将其改成了/home/bc/07_httpd存盘退出后发现还是无法执行,第二次我们直接使用gcc对其单步进行编译:
armv4l-unknow-linux-gcc –E copy.c –o copy.i
armv4l-unknow-linux-gcc –S copy.i –o copy.s
armv4l-unknow-linux-gcc –c copy.s –o copy.o
           

对于httpd的编译方式同上。

Make——工程管理器,为了减少重复工作量,“自动编译管理器”,“自动”在于它能根据文件时间戳自动发现更新过的文件而减少编译工作量,同时它通过读入makefile文件的内容来执行大量的编译工作。用户只需要编写一次简答的编译语句就可以了,也就是说以后只要敲入make即可编译全部文件,它大大提高了实际项目的工作效率,几乎所有linux下的项目编程都需要用到它。

20145227鄢曼君 20145201李子璇

问题:

我们将07_httpd文件夹全部拷贝进了bc中,文件夹中拥有Makefile文件,按照实验指导书中使用make编译时,出现错误,程序无法编译。

解决:

我们在07_httpd所在的ws文件夹中新建了一个bin文件夹,最终成功编译。

问题:

make时出现error127。

解决:

找到了原因,环境变量配置出现问题,是拷代码时没有将一个Rules.mak的MAK类型文件一起拷过来,导致make命令不能使用,重新配置后则正常make。

调试运行问题

20145219宋歌 201452114张宁

问题:

使用实验指导书中的命令mount -t nfs -o nolock 192.168.0.56:/arm2410cl /host将 httpd 下载到开发板上时出错。

《信息安全系统设计基础》实验五 《网络通信》 问题总结《信息安全系统设计基础》实验五 《网络通信》 问题总结

解决:

分析命令后发现,我们和实验指导书的IP、文件夹位置什么的并不是完全相同的,这条命令需要更改IP地址

192.168.0.56

为Redhat虚拟机的IP地址

192.16.0.234

,并把

arm2410cl

文件夹更改为共享文件夹

home/bc

,运行命令

mount -t nfs -o nolock 192.168.0.234:/home/bc /host

即可顺利执行。

《信息安全系统设计基础》实验五 《网络通信》 问题总结《信息安全系统设计基础》实验五 《网络通信》 问题总结

20145206 邹京儒 20145236冯佳

问题:

在将httpd服务下载到开发板上这一步骤中,挂载超级终端与共享文件建立通讯时,输

mount -t nfs -o nolock 192.168.0.234:/root/bc /host

时,

No such file or director

错误提示。

解决:

再次查看共享文件目录,确定我们并不存在

/root/home/bc

这一目录,将命令行修改

mount -t nfs -o nolock 192.168.0.234:/home/bc /host

即可解决所提示错误。

转载于:https://www.cnblogs.com/yx20145312/p/6217118.html

继续阅读