大家好,感谢邀请,今天来为大家分享一下makefile生成可执行文件的问题,以及和linux如何运行makefile文件的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
makefile怎么去掉不用的文件
makeclean清除上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件。
linux-Ubuntu如何安装tar.gz文件
tar.gz文件的安装,是属于自己编译源代码的方法。多说一句,tar是把文件打成一个包,并不压缩;.gz是用gzip把打成包的.tar文件压缩,所以成了一个.tar.gz的文件。安装的话,先解包,tar-zxvfxxx.tar.gz,这样会生成一个以文件名命名的文件夹。里面会有一些README、INSTALL、DOC等等一些文档,仔细读读,可以知道这个软件安装需要什么特殊的设置什么的。这个没有办法细说了吧:)一般软件包里会有一个叫configure的脚本文件,完成配置的任务。可以加很多参数,具体的可以运行./configure--help得到帮助的,比如./configure--prefix=xxx是设定软件安装到哪里。设置好参数,运行./configure,会生成makefile文件,这是你后面编译的基础。接下来就要编译了,很简单,因为有makefile文件的存在,只要运行make就可以完成编译的。make是将读入所有由configure脚本程序建立的制作文件。这些制作文件会告诉make哪些文件需要被编译以及按照怎样的顺序对它们进行编译,因为可能会有上百个源程序文件。当make工作的时候,会在屏幕上显示出正在执行的每一个命令,以及与这个命令相关的全部参数。这些输出通常都是编译器的调用声明和所有传递给编译器的参数。如果编译器顺利地完成了工作,就不会出现什么错误信息。大多数编译器的错误信息十分清楚和明确,因此不用担心可能会漏掉一个错误。如果确实看到有一错误,也不用慌张。大多数错误信息并不反映出程序本身出现了一个问题,通常都是系统这里或者那里的问题。典型情况下,这些信息大多是因为文件访问权限不正确而产生的或者是因为文件没有找到。完成编译,之后就是安装软件了。这就更简单了,makeinstall就好了,这个命令将启动安装脚本程序。因为make命令会在执行每一个命令的时候把它显示出来,所以将会看到许许多多的文字掠过眼前。如果没有看到什么错误信息,就说明这个软件包安装好了。反安装就是makeuninstall了。介绍tar,gzip的使用方法。
1.压缩一组文件为tar.gz后缀。#tarcvfbackup.tar/etc#gzip-qbackup.tar或#tarcvfzbackup.tar.gz/etc/
2.释放一个后缀为tar.gz的文件。#gunzipbackup.tar.gz#tarxvfbackup.tar或#tarxvfzbackup.tar.gz
3.用一个命令完成压缩#tarcvf-/etc/|gzip-qc>backup.tar.gz
4.用一个命令完成释放#gunzip-cbackup.tar.gz|tarxvf-
5.如何解开tar.Z的文件?#tarxvfzbackup.tar.Z或#uncompressbackup.tar.Z#tarxvfbackup.tar
6.如何解开.tgz文件?#gunzipbackup.tgz
7.如何压缩和解压缩.bz2的包?#bzip2/etc/smb.conf这将压缩文件smb.conf成smb.conf.bz2#bunzip2/etc/smb.conf.bz2这将在当前目录下还原smb.conf.bz2为smb.conf注:.bz2压缩格式不是很常用,你可以manbzip2
manefiest文件的用途
其作用如下: makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。 makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率 记得要赞一个哦
如何用一个makefile编译多个目标
install:xxx
里的install是一个目标,但是
install_$(target):
@install-d$(exec_dir)
@install$(target)$(exec_dir)
@install$(target).txt$(exec_dir)
里的install(即@后面的install)则是install这个可执行程序(*nix中用来安装文件的工具),和makefile中的install目标无关。
你完全可以把makefile中的目标install改成其他名字,例如
my_install:$(if$(wildcard$(target)),install_$(target))
install_$(target):
@install-d$(exec_dir)
@install$(target)$(exec_dir)
@install$(target).txt$(exec_dir)
@echo
@echoinstalled$(target)binariesto$(exec_dir)..
Makefile好用吗
当然好用啦。用makefile来编译工程,对很多朋友来说都是一件麻烦而痛苦的事情,这里我写了几个makefile,专门提供给那些曾经被makefile困扰的朋友,根据生成的目标文件不同,我将makefile分成了三份:生成可执行文件的makefile,生成静态链接库德makefile,生成动态链接库的makefile。
这些makefile都很简单,一般都是一看就会用,用法也很容易,只需要把它们拷贝到你的代码的同一目录下,然后就可以使用make来生成目标文件了
关于makefile生成可执行文件的内容到此结束,希望对大家有所帮助。