20155239 2017-2018-1《信息安全系统设计》第二周课堂测试
2017-10-01 22:35
302 查看
20155239 2017-2018-1《信息安全系统设计》第四周课堂测试、Makefile以及myod
一、测试1-vi1.每个.c一个文件,每个.h一个文件,文件名中最好有自己的学号
2.用Vi输入图中代码,并用gcc编译通过
3.在Vi中使用K查找printf的帮助文档
4.提交vi编辑过程截图,要全屏,包含自己的学号信息
2.测试2-gcc测试
1.用gcc 进行预处理,编译,汇编,链接vi输入的代码
2.生成的可执行文件中要有自己的学号
3.提交预处理,编译,汇编,链接,运行过程截图,要全屏,包含自己的学号信息
运行结果:
测试4-静态库的测试
除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.a静态库?main.c如何使用mymath.a?
提交静态库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息
测试5-共享库
除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.so共享库?main.c如何使用mymath.so?
提交共享库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息
在命令行中输入以下命令,得到名为mymath.so的动态库文件
gcc -shared -fpic -o mymath.so/*生成的动态库文件名*/ add.c sub.c mul.c div.c/*生成动态库文件所需文件*/
在命令行中输入以下命令,实现main.c对mymath.so的使用,生成名为mymath的文件
gcc main.c head.h mymath.so -o mymath
在命令行中输入以下命令,把mymath.so移动到/usr/lib/目录中
sudo mv mymath.so /usr/lib/
测试6-Makefile
1 写出编译上面vi编辑代码的makefile,编译出来的目标文件为testmymath, 只用显式规则就可以.
2 提交Make过程截图,要全屏,包含自己的学号信息
一开始不明白Makefole是什么意思,最后问了寝室的同学,就是一个可以节省很多命令步骤的一个方法,只需要一个make命令,所有工程就完全自动编译,不得不说是一个很简便的方法。
看了我们班周泽堃的博客按照他的操作步骤完成了这个实验。
结果如下:
在makefile文本中写下如下代码,保存文本并退出
testmymath/待生成的文件名/: add.c sub.c mul.cdiv.chead.h/需处理的文件名/
/这里是TAB不是空格/gcc .c head.h -o testmymath/需执行的命令*/
myod
复习c文件处理内容
编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能
main与其他分开,制作静态库和动态库
编写Makefile
提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息
代码编译遇到的问题
问题一:编译好myod.c以后用./myod.c运行出现了无法运行。解决问题:问了舍友先用GCC编译,然后在强制运行./ a.out
相关文章推荐
- 20155306 2017-2018-1《信息安全系统设计》第二周课堂测试以及myod的实现
- 20155322 2017-2018-1《信息安全系统设计》第二周 课堂测试 Linux下C语言实现MYOD
- 2017-2018-1 20155239学号 《信息安全系统设计基础》课堂测试补做+第四周学习总结
- 2017-2018-1 20155338 《信息安全系统设计基础》 第二周课堂测试
- 2017-2018-1 20155231 《信息安全系统设计基础》 第二周课堂测试
- 2017-2018-1 20155331 《信息安全系统设计基础》第二周课堂测试总结
- 2017-2018-1 20155315 《信息安全系统设计基础》第二周课堂测试总结
- 2017-2018-1 20155235 《信息安全系统设计基础》第二周课堂测试
- 2017-2018-1 20155228 《信息安全系统设计基础》第二周课堂测试与课后作业
- 20155219 2017-2018-1 《信息安全系统设计》第4周课堂实践
- 20155339 2017-2018-1《信息安全系统设计》第四周课堂测试、Makefile以及myod
- 2017-2018-1 20155215 第八周课堂测试+课下作业
- 【课堂测试和课堂实践成绩】2017-2018 第一学期201623班《程序设计与数据结构》(不定期更新)
- 2017-2018-1 20155318 《信息安全系统设计基础》第六周课堂测试补充
- 2017-2018-1 20155336 《信息安全系统设计基础》第八周课堂测试
- 2017-2018-1 20155235 《信息安全系统设计基础》第八周课堂测试
- 2017-2018-1 20155333 《信息安全系统设计基础》课堂测试
- 2017-2018-1 20155308 《信息安全系统设计基础》第二周测试(课上+课下)
- 2017-2018-1 20155232 《信息安全系统设计基础》第十周课堂测试(ch06)补交
- 2017-2018-1 20155327 《信息安全系统设计基础》课堂测试&课下作业