当前位置: 技术问答>linux和unix
关于安装proftpd-1.2.5rc1的问题!在线请教!
来源: 互联网 发布时间:2014-11-13
本文导语: 我下载了一个proftpd-1.2.5rc1,解压在/usr/src下面,然后执行./configure正常完成,但是当执行make时系统不停的checking 是什么原因 我现在怎么办?./configure是用来干什么的?make 是干什么的? | 看...
我下载了一个proftpd-1.2.5rc1,解压在/usr/src下面,然后执行./configure正常完成,但是当执行make时系统不停的checking 是什么原因 我现在怎么办?./configure是用来干什么的?make 是干什么的?
|
看看下面的文章,应该对你有帮助的!
1。源代码的编译安装 的问题看下面的叙述:
一般来说,在解压缩生成的目录中都会有名为Readme、Rnstall或Readme.install之类的文件。这些文件通常会对软件的功能、特性、版权许可、安装以及相关知识加以介绍,并且会提到关于安装的方法和步骤。举例来说:在apache_1.3.6的install文件中说明了如下内容(此处只列出总的条目,具体内容省略):
Installing the Apache 1.3 HTTP server with APACI
==============================
1.Overview for the impatient(概括说明配置的全过程)
$./configure--prefix=PREFIX
$make
$make install
$PREFIX/bin/apachectl start
2.Requirements(需要的条件)
3.Configuring the source tree(配置的参数说明)
4.Building the package(编译软件的方法)
5.Installing the package(安装软件的方法)
6.Testing the package(软件测试)
理解并能熟练使用这些说明文件后,就可以利用一些规律来安装大多数的软件。对于那些没有说明文件的软件(当然这种情况比较少见),这些规律通常也是适用的。一般来说,与安装软件有直接关系的文件只有两个:configure 、Makefile。
其中,configure文件具有可执行的属性,是用来配置软件的,它的参数比较多,用法也比较灵活。当然,不同的软件参数也不相同,这时候就需要借助它的help参数,运行下面的命令就会让你感到豁然开朗:
#〉 ./configure -help
Usage: configure [options]
Options: [defaults in brackets after descriptions]
General options:
--quiet, --silent do not print messages
--verbose,-v print even more messages
--sha [=DIR] switch to a shadow tree (under DIR) for building
Stand-alone options:
--help,-h print this message
--show-layout print installation path layout (check and debug)
图1 Gnome运行界面
Installation layout options:
--with-layout=[F:]ID use installation path layout ID (from file F)
--target=TARGET install name-associated files using basename TARGET
……
接下来,就可以运行“./configure [options]”来配置该软件。注意,命令行中的“./”非常重要,它告诉系统要运行的命令就在当前目录下(否则系统就会到$path变量指定的路径下去执行命令)。执行命令后可以生成Makefile文件或者修改已有的文件配置。
Makefile文件通常是用来编译和安装软件的。运行make命令时系统会自动根据Makefile文件中的设置对软件进行编译和安装。make命令有时还可以带一些参数,如:all、build、config、install等。具体要带哪个参数可以参看Makefile文件。在Linux中绝大部分文件是文本文件,Makefile就是一个shell程序(Linux中shell程序与DOS中的批处理文件有很多相似之处,当然功能要强得多),很容易读懂,尤其是编译时可带的参数都会明确写出,例如:
##========================
## Targets
##========================
# default target
all: build
##------------------------
## Build Target
##------------------------
# build the package
build:
……
# the non-verbose variant for package maintainers
build-quiet:
@$(MAKE) -f $(TOP)/$(MKF) $(MFLAGS) $(MFWD) QUIET=1 build
# build the additional support stuff
build-support:
……
##------------------------
## Installation Targets
## -----------------------
# the install target for installing the complete Apache
# package. This is implemented by running subtargets for the
# separate parts of the installation process.
install:
……
# the non-verbose variant for package maintainers
install-quiet:
@$(MAKE) -f $(TOP)/$(MKF) $(MFLAGS) $(MFWD) QUIET=1 install
# create the installation tree
install-mktree:
……
上面这段代码是apache_1.3.6的Makefile文件的一部分,从这段程序可以看出all参数表示完全编译(缺省参数)。此外,编译时还可以带build、build-quiet、build-surpport等参数;安装时可以带install、install-quiet、install-surpport等参数。它们的功能分别在“#”表示的注释中进行了说明。需要额外说明的是,有些软件(例如Linux的内核升级程序)不用configure命令来配置软件,而是用make config来完成这项工作,所以,具体使用哪种方法要具体问题具体分析。
1。源代码的编译安装 的问题看下面的叙述:
一般来说,在解压缩生成的目录中都会有名为Readme、Rnstall或Readme.install之类的文件。这些文件通常会对软件的功能、特性、版权许可、安装以及相关知识加以介绍,并且会提到关于安装的方法和步骤。举例来说:在apache_1.3.6的install文件中说明了如下内容(此处只列出总的条目,具体内容省略):
Installing the Apache 1.3 HTTP server with APACI
==============================
1.Overview for the impatient(概括说明配置的全过程)
$./configure--prefix=PREFIX
$make
$make install
$PREFIX/bin/apachectl start
2.Requirements(需要的条件)
3.Configuring the source tree(配置的参数说明)
4.Building the package(编译软件的方法)
5.Installing the package(安装软件的方法)
6.Testing the package(软件测试)
理解并能熟练使用这些说明文件后,就可以利用一些规律来安装大多数的软件。对于那些没有说明文件的软件(当然这种情况比较少见),这些规律通常也是适用的。一般来说,与安装软件有直接关系的文件只有两个:configure 、Makefile。
其中,configure文件具有可执行的属性,是用来配置软件的,它的参数比较多,用法也比较灵活。当然,不同的软件参数也不相同,这时候就需要借助它的help参数,运行下面的命令就会让你感到豁然开朗:
#〉 ./configure -help
Usage: configure [options]
Options: [defaults in brackets after descriptions]
General options:
--quiet, --silent do not print messages
--verbose,-v print even more messages
--sha [=DIR] switch to a shadow tree (under DIR) for building
Stand-alone options:
--help,-h print this message
--show-layout print installation path layout (check and debug)
图1 Gnome运行界面
Installation layout options:
--with-layout=[F:]ID use installation path layout ID (from file F)
--target=TARGET install name-associated files using basename TARGET
……
接下来,就可以运行“./configure [options]”来配置该软件。注意,命令行中的“./”非常重要,它告诉系统要运行的命令就在当前目录下(否则系统就会到$path变量指定的路径下去执行命令)。执行命令后可以生成Makefile文件或者修改已有的文件配置。
Makefile文件通常是用来编译和安装软件的。运行make命令时系统会自动根据Makefile文件中的设置对软件进行编译和安装。make命令有时还可以带一些参数,如:all、build、config、install等。具体要带哪个参数可以参看Makefile文件。在Linux中绝大部分文件是文本文件,Makefile就是一个shell程序(Linux中shell程序与DOS中的批处理文件有很多相似之处,当然功能要强得多),很容易读懂,尤其是编译时可带的参数都会明确写出,例如:
##========================
## Targets
##========================
# default target
all: build
##------------------------
## Build Target
##------------------------
# build the package
build:
……
# the non-verbose variant for package maintainers
build-quiet:
@$(MAKE) -f $(TOP)/$(MKF) $(MFLAGS) $(MFWD) QUIET=1 build
# build the additional support stuff
build-support:
……
##------------------------
## Installation Targets
## -----------------------
# the install target for installing the complete Apache
# package. This is implemented by running subtargets for the
# separate parts of the installation process.
install:
……
# the non-verbose variant for package maintainers
install-quiet:
@$(MAKE) -f $(TOP)/$(MKF) $(MFLAGS) $(MFWD) QUIET=1 install
# create the installation tree
install-mktree:
……
上面这段代码是apache_1.3.6的Makefile文件的一部分,从这段程序可以看出all参数表示完全编译(缺省参数)。此外,编译时还可以带build、build-quiet、build-surpport等参数;安装时可以带install、install-quiet、install-surpport等参数。它们的功能分别在“#”表示的注释中进行了说明。需要额外说明的是,有些软件(例如Linux的内核升级程序)不用configure命令来配置软件,而是用make config来完成这项工作,所以,具体使用哪种方法要具体问题具体分析。