来一发Linux下Makefile文件复杂观点
无论图形界面发展到什么水平这个原理是不会变的,Linux命令有许多强大的功能:从简单的磁盘操作、文件存取、到进行复杂的多媒体图象和流媒体文件的制作。将各个模块的干系写进makefile,而且写了然编译命令,如许,当有模块的源代码举行修正后,就能够经由过程利用make命令运转makefile文件就能够举行触及模块修正的一切模块的从头编译,其他模块就不必管了。
makefile文件的写法:
方针,组件
划定规矩
比方有上面5个文件:
/*main.c*/
#include"mytool1.h"
#include"mytool2.h"
intmain(intargc,char**argv)
{
mytool1_print("hello");
mytool2_print("hello");
}
/*mytool1.h*/
#ifndef_MYTOOL_1_H
#define_MYTOOL_1_H
voidmytool1_print(char*print_str);
#endif
/*mytool1.c*/
#include"mytool1.h"
voidmytool1_print(char*print_str)
{
printf("Thisismytool1print%s
",print_str);
}
/*mytool2.h*/
#ifndef_MYTOOL_2_H
#define_MYTOOL_2_H
voidmytool2_print(char*print_str);
#endif
/*mytool2.c*/
#include"mytool2.h"
voidmytool2_print(char*print_str)
{
printf("Thisismytool2print%s
",print_str);
}
能够如许举行编译以便运转main这个可实行文件
gcc-cmain.c(天生main.o)
gcc-cmytool1.c(天生mytool1.0)
gcc-cmytool2.c(天生mytool2.0)
gcc-omainmain.omytool1.omytool2.o(天生main)
也能够如许写makefile文件
mainmain.omytool.omytool2.o
gcc-0$@$^
main.0main.cmytool1.hmytool2.h
gcc-c{GetProperty(Content)}lt;
mytool1.0mytool1.cmytool1.h
gcc-c{GetProperty(Content)}lt;(大概是mytool.c)
mytool2.0mytool2.cmytool2.h
gcc-c{GetProperty(Content)}lt;(大概是mytool2.c)
经由过程make命令能够运转该文件,也就是举行编译了。
linux上有良多库,c言语编写的各类库的总称为libc,glibc为libc的一个子集,由gnu供应,内核供应的体系函数和体系挪用是不包含在libc中。
linux体系默许会安装glibc
glibc中
经常使用库gcc会主动往查找,不予剖析。
在/lib,/usr/lib,/usr/local/lib在这三个路径上面有一些尺度库,只需-l+库名能够不用要指定路径。其他库必需在用gcc时用-L+详细的路径
</p>
如果你只是想应付一下操作系统的课程,劝你最好别学,或者说不要指望能用的怎么样。 选择一些适于初学者的Linux社区。 就这样,我们一边上OS理论课,一边上这个实验,这样挺互补的,老师讲课,一步一步地布置任务 目前全球有超过一百多个Linux发行版本,在国内也能找到十几个常见版本。如何选择请根据你的需求和能力,RedhatLinux和DebianLinux是网络管理员的理想选择。 Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。 发问的时候一定要注意到某些礼节。因为Linux社区是一个松散的组织、也不承担回复每个帖子的义务。它不是技术支持。 永中office 2004增强版安装只需要默认安装即可使用并操作大多与win系统雷同,打印机的配置和管理,记录光盘等。 虽然大家都比较喜欢漂亮的mm,但是在学 linux 的过程中,还是要多和“男人”接触一下:P 遇到问题的时候,出来看说和上网查之外,就是要多用 linux 下的 man 命令找找帮助。 众所周知,目前windows操作系统是主流,在以后相当长的时间内不会有太大的改变,其方便友好的图形界面吸引了众多的用户。
页:
[1]