版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Linux实验报告实验十:UNIX gcc用与编程环境Linux Linux 操作系统实验报告计算机与数据科学学院一、实验目的gccg+的用法;了解目标代码、库函数的使用;(4)(5)掌握 make 命令和 Makefile 文件的使用。二、实验环境WindowsPCVMWare,VMWareLinux三、实验内容与实验过程及分析一、C/C+编程1、C 语言版“Hello World”用 vi 编辑一个名为 hello.c 的文件,其内容为#includemain()printf(”Hello World! Cn”);编译并执行程序。编译方法为:cchello.c/ 生成可执行程序 a.out
2、cco hello hello.c/ 生成可执行程序 helloccc hello.c/生成目标文件 hello.occS hello.c/hello.s执行程序:./a.out#a.out程序./hello#hello程序Linux 操作系统实验报告Linux 操作系统实验报告计算机与数据科学学院2、组合编程Cf1.c,#include f1(int arg)printf(”f1: you passed %dn”,arg);C语言文件f2.c。内容为: #includef2(char*arg)printf(”f2: you passed %sn”,arg);C语言文件m.c。内容为: #in
3、cludemain()f1(16);f2(”Hello World!”);vi程序:cc cf1.cf2.c#生成 f1.o和 f2.occ Sf1.cf2.c生成 f1.s和 vicat查看它们的内容ccomp m.c f1.c f2.c # mp,执行方法为:./mpcc o m m.cf1.of2.om,执行方法为:./m构造自己的静态库cc o f1.c f2.c/生成目标文件f1.o,f2.o ar crv libmyl.af1.of2.o/生成库libmyl.aranliblibmyl.a/使用自己的库cc o mp m.c libmyl.a libmyl.acc o mp m.o
4、libmyl.a/libmyl.am.o cco mp m.c -L.lmyl/myl3、构造可共享库cc -c f1.c f2.c/生成目标文件cc -shared -o libmy.so f1.o f2.o/由目标文件生成共享库或cc -shared o libmy.so cf1.cf2.c/由源文件生成共享库4、使用共享库/f3.c,f1.cf2.c如前#include #include #define SO_FILE ./libmy.so/libmy.solddldconfig处理main()void*sfp;char *err; int tmpi=16;int (*f1)(int),
5、(*f2)(char*);/定义函数指针sfp=dlopen(SO_FILE,RTLD_LAZY);/if(sfp=NULL)fprintf(stderr,dlerror(); exit(1);f1=dlsym(sfp,f1);/f1入口地址(指针)err=dlerror();/if(err)fprintf(stderr,err); exit(2);f2=dlsym(sfp,f2);/f2入口地址(指针)err=dlerror();/if(err)fprintf(stderr,err); exit(3);fprintf(stderr,-beginen);f2(TestString);/f2f1
6、(tmpi);/f1fprintf(stderr,+end+n);dlclose(sfp); exit(0);/关闭共享库5、Makefile的编写与使用(1)2)Makefile文件a.Makefile文件的构造f: f1.o f2.o f3.ogcc -o f f1.o f2.o f3.o f1.o:f1.cgcc c f1.c f2.o:f2.cgcc c f2.c f3.o:f3.cgcc c f3.cb.Makefile的使用make#生成默认(第一个)目makef#生成目标fmake f1.o #生成目标 f1.o四、实验总结makefile makefile makefile 的不熟悉,理解不透彻解决方
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年运载火箭遥测系统检测设备项目发展计划
- 2024年建材级纤维素醚项目合作计划书
- 人教版九年级上册化学期末复习第二单元测试题含答案
- 2024年高速型数控铣床或数控仿形铣床项目建议书
- 2024年印后处理设备:打码喷码机合作协议书
- 2024年光致抗蚀剂项目发展计划
- 2024年贵金属复合材料(含微型、异型)项目建议书
- 2024年海水淡化设备项目合作计划书
- 2023年金属制日用杂品项目需求分析报告
- 2024年水基聚合物防水涂料项目发展计划
- 金坛区苏科版五年级上册劳动《06刮鳞器》课件
- 小学语文人教二年级上册(统编2023年更新)第三单元-《曹冲称象》1+X延伸阅读
- 储罐 (有限空间)作业安全告知牌及警示标志
- 生物实验表格
- HT光伏仪器实际操作
- 二年级苏教版数学上册《认识厘米》教案(市级公开课)
- 来宾参观接待申请表样表
- 课程考试考场情况记录表(模板)
- 人文科学导论-陕西师范大学
- 无穷级数课件.ppt(PPT 103页)
- 商品销售管理系统的设计与实现(共32页)
评论
0/150
提交评论