《Linux操作系统》实验十-UNIX gcc编译器的使用与编程环境_第1页
《Linux操作系统》实验十-UNIX gcc编译器的使用与编程环境_第2页
《Linux操作系统》实验十-UNIX gcc编译器的使用与编程环境_第3页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论