make 和 make install的区别是是啥?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了make 和 make install的区别是是啥?相关的知识,希望对你有一定的参考价值。
作用不同,具体如下:
make
这条命令用来编译,大多数的源代码包都经过这一步进行编译。(当然有些perl或Python编写的软件需要调用perl或python来进行编译)。从Makefile中读取指令,然后编译。
make install
这条命令来进行安装(当然有些软件需要先运行 make check 或 make test来进行一些测试),这一步一般需要有 root 权限(因为要向系统写入文件)
拓展资料
编译(compilation , compile) 1、利用编译程序从源语言编写的源程序产生目标程序的过程。 2、用编译程序产生目标程序的动作。 编译就是把高级语言变成计算机可以识别的2进制语言,计算机只认识1和0,编译程序把人们熟悉的语言换成2进制的。
编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息。
编译语言是一种以编译器来实现的编程语言。它不像直译语言一样,由解释器将代码一句一句运行,而是以编译器,先将代码编译为机器码,再加以运行。理论上,任何编程语言都可以是编译式,或直译式的。它们之间的区别,仅与程序的应用有关。
参考资料:百度百科--编译
make 和 make install的区别:
1、make install的意思是:安装,编译安装,安装软件,完成安装,安装编译好的源码包。
2、make的意思是:做,制造,生产,制定,使成为,使产生。
拓展资料
make
1、I'd just like to make a comment
我只想稍加评论。
2、Apparently he made a mess of his audition
看样子他把试镜搞砸了。
3、Mary made as if to protest, then hesitated
玛丽好像要抗议,却又犹豫了。
4、He made 1,972 runs for the county.
他为本郡赢得了1,972分。
5、Why make do with a copy if you can afford the genuine article?
要是买得起真品,为什么还要拿复制品来凑合呢?
make install
1、You can build the initng distribution with./ configure, make, and make install.
您可以使用./configure、make和make install编译自己的initng发行版。
2、After this, the usual make and make install commands compile and install the software.
然后,使用常见的make和make install命令编译并安装软件。
3、The installation is simple and standard: run the configure command followed by make and make install.
安装过程很简单,是标准的:运行configure命令,然后运行make和make install。
4、Building and installing upstart is simple and follows the typical configure, make, and make install pattern.
编译和安装upstart非常简单,并且遵循典型的configure、make和make install模式。
参考技术Bmake
这一步就是编译,大多数的源代码包都经过这一步进行编译(当然有些perl或Python编写的软件需要调用perl或python来进行编译)。
如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。
make 的作用是开始进行源代码编译,以及一些功能的提供,这些功能由他的 Makefile 设置文件提供相关的功能,比如 make install 一般表示进行安装,make uninstall 是卸载,不加参数就是默认的进行源代码编译。
make 是 Linux 开发套件里面自动化编译的一个控制程序,他通过借助 Makefile 里面编写的编译规范进行自动化的调用 gcc 、ld 以及运行某些需要的程序进行编译的程序。一般情况下,他所使用的 Makefile 控制代码,由 configure 这个设置脚本根据给定的参数和系统环境生成。
make install
这条命令来进行安装(当然有些软件需要先运行 make check 或 make test来进行一些测试),这一步一般需要你有 root 权限(因为要向系统写入文件)
Lyinux语言定义
Lyinux语言是一种描述语言(Markup Language)语言,通过 文本的方式对3D场景进行描述,它是在VRML语言基础上的扩展与改进。它继承了VRML描述语言的基本节点,如Shape,Transform等,同时又针对CC6浏览器的实际应用扩展了如System,MoveController这样的节点。以这种文本的方式,是为了最好的与当前服务器配合,服务器可以通过php,JSP,ASP等 脚本语言与Lyinux语言配合使用,通过动态解析生成新的文本返回给客户端,只要服务器可以输出文本,并且符合CC6所支持的标准, 浏览器就可以动态的创建出任意场景。
Lyinux用类似html标记文本语言来描述三维场景,就象我们的编程语言,比如,上面的例子如果我们要规定正方体的边长为3厘米,可以这样写:Boxsize 3.0 3.0 3.0。
节点是什么?Lyinux语言用层次化的场景图来描述三维对象和世界。在场景图中的实体称为 节点。了解web语言的人都应该知道HTML,XML等都是 标记语言,在Lyinux中 节点就相当于HTML、XML中的标签,就像标签有自己的属性一样,每个节点也有每个节点的属性,在Lyinux中我们叫做域,把属性的值称为域值。比如Boxsize 3.0 3.0 3.0,Box就是一个立方体 节点,花括号里size是描述长宽高的属性即域,size后跟的数值是属性值即域值。
Lyinux的特点
1)可编辑性
使用各种 文本编辑器都可以编辑Lyinux文件,还可以开发应用程序来创建、编辑和保存Lyinux文件,也可 将其它常用的三维文件格式转换为Lyinux支持的格式。
2)可重用性
提供了使用、组合并允许重用动态三维对象的能力。
3)可扩展性
提供了增加新的对象类型的能力。
4)跨平台性
在不同的 计算机平台上都能达到可扩展和交互的性能。
5)可伸缩性
允许任意大小的动态三维世界。
./configure,make,make install的作用(转)
这些都是典型的使用GNU的AUTOCONF和AUTOMAKE产生的程序的安装步骤。
./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。
make是用来编译的,它从Makefile中读取指令,然后编译。
make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
AUTOMAKE和AUTOCONF是非常有用的用来发布C程序的东西。
-----
1、configure,这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码:./configure –prefix=/usr 意思是将该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。同时一些软件的配置文件你可以通过指定 –sys-config= 参数进行设定。有一些软件还可以加上 –with、–enable、–without、–disable 等等参数对编译加以控制,你可以通过允许 ./configure –help 察看详细的说明帮助。
2、make,这一步就是编译,大多数的源代码包都经过这一步进行编译(当然有些perl或python编写的软件需要调用perl或python来进行编译)。如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。
3、make insatll,这条命令来进行安装(当然有些软件需要先运行 make check 或 make test 来进行一些测试),这一步一般需要你有 root 权限(因为要向系统写入文件)。
-----
Linux的用户可能知道,在Linux下安装一个应用程序时,一般先运行脚本configure,然后用make来编译源程序,在运行make install,最后运行make clean删除一些临时文件。使用上述三个自动工具,就可以生成configure脚本。运行configure脚本,就可以生成Makefile文件,然后就可以运行make、make install和make clean。
configure是一个shell脚本,它可以自动设定源程序以符合各种不同平台上Unix系统的特性,并且根据系统叁数及环境产生合适的Makefile文件或是C的头文件(header file),让源程序可以很方便地在这些不同的平台上被编译连接。
这时,就可运行configure脚本了,运行configure脚本,就可产生出符合GNU规范的Makefile文件了:
$ ./configure
到此时,就可以运行make进行编译,在运行make install进行安装了,最后运行make clean删除临时文件。
$ make
$ make install (注:运行这个要有足够的权限)
$ make clean
利用configure所产生的Makefile文件有几个预设的目标可供使用,其中几个重要的简述如下:
make all:产生我们设定的目标,即此范例中的可执行文件。只打make也可以,此时会开始编译原始码,然后连结,并且产生可执行文件。
make clean:清除编译产生的可执行文件及目标文件(object file,*.o)。
make distclean:除了清除可执行文件和目标文件外,把configure所产生的Makefile也清除掉。
make install:将程序安装至系统中。如果原始码编译无误,且执行结果正确,便可以把程序安装至系统预设的可执行文件存放路径。如果用bin_PROGRAMS宏的话,程序会被安装至/usr/local/bin这个目录。
make dist:将程序和相关的档案包装成一个压缩文件以供发布。执行完在目录下会产生一个以PACKAGE-VERSION.tar.gz为名称的文件。 PACKAGE和VERSION这两个变数是根据configure.in文件中AM_INIT_AUTOMAKE(PACKAGE,VERSION)的定义。在此范例中会产生test-1.0.tar.gz的档案。
make distcheck:和make dist类似,但是加入检查包装后的压缩文件是否正常。这个目标除了把程序和相关文件包装成tar.gz文件外,还会自动把这个压缩文件解开,执行 configure,并且进行make all 的动作,确认编译无误后,会显示这个tar.gz文件可供发布了。这个检查非常有用,检查过关的包,基本上可以给任何一个具备GNU开发环境-的人去重新编译。
http://www.linuxidc.com/Linux/2011-02/32211.htm
以上是关于make 和 make install的区别是是啥?的主要内容,如果未能解决你的问题,请参考以下文章
Linux中make, make install命令分别是啥,用法?
./configure和make和make install的区别