在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Linux环境下的软件安装,并不是一件容易的事情;如果通过源代码编译后在安装,当然事情就更为复杂一些;现在安装各种软件的教程都非常普遍;但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而解了。Configure脚本配置工具就是基础之一,它是autoconf的工具的基本应用。 与一些技巧相比,Configure显得基础一些,当然使用和学习起来就显得枯燥乏味一些,当然要成为高手,对基础的熟悉不能超越哦。 为此我转载了一篇关于Configure选项配置的详细介绍。供大家参考 ’configure’脚本有大量的命令行选项.对不同的软件包来说,这些选项可能会有变化,但是许多基本的选项是不会改变的.带上’–help’ 选项执行’configure’脚本可以看到可用的所有选项.尽管许多选项是很少用到的,但是当你为了特殊的需求而configure一个包时,知道他们的存在是很有益处的.下面对每一个选项进行简略的介绍: –cache-file=FILE –help –no-create –quiet –version –prefix=preFIX(文件安装的位置) –exec-prefix=EPREFIX –bindir=DIR —sbindir=DIR –libexecdir=DIR(包目录,程序调用) –datadir=DIR –sysconfdir=DIR(/etc配置文件目录) –sharedstatedir=DIR –localstatedir=DIR –libdir=DIR(库文件目录) –includedir=DIR –oldincludedir=DIR –infodir=DIR –mandir=DIR(帮助文档的安装目录) –srcdir=DIR –program-prefix=PREFIX –program-suffix=SUFFIX –program-transform-name=PROGRAM –build=BUILD –host=HOST –target=GARGET –disable-FEATURE 复制代码 代码如下:$ ./configure –disable-gui
-enable-FEATURE[=ARG](系统参数配置,在编译时完成) 复制代码 代码如下:$ ./configure –enable-buffers=128 `–enable-FEATURE=no’与上面提到的’–disable-FEATURE’是同义的. –with-PACKAGE[=ARG] 复制代码 代码如下:$ ./configure –with-tcl=/usr/local –with-tk=/usr/local ‘–with-PACKAGE=no’与下面将提到的’–without-PACKAGE’是同义的. –without-PACKAGE 复制代码 代码如下:$ ./configure –without-gnu-ld
–x-includes=DIR –x-libraries=DIR 在源码树中运行’configure’是不必要的同时也是不好的.一个由’configure’产生的良好的’Makefile’可以构筑源码属于另一棵树的软件包.在一个独立于源码的树中构筑派生的文件的好处是很明显的:派生的文件,如目标文件,会凌乱的散布于源码树.这也使在另一个不同的系统或用不同的配置选项构筑同样的目标文件非常困难.建议使用三棵树:一棵源码树(source tree),一棵构筑树(build tree),一棵安装树(install tree).这里有一个很接近的例子,是使用这种方法来构筑GNU malloc包: 复制代码 代码如下:$ gtar zxf mmalloc-1.0.tar.gz $ mkdir build && cd build $ ../mmalloc-1.0/configure creating cache ./config.cache checking for gcc… gcc checking whether the C compiler (gcc ) works… yes checking whether the C compiler (gcc ) is a cross-compiler… no checking whether we are using GNU C… yes checking whether gcc accepts -g… yes checking for a BSD compatible install… /usr/bin/install -c checking host system type… i586-pc-linux-gnu checking build system type… i586-pc-linux-gnu checking for ar… ar checking for ranlib… ranlib checking how to run the C preprocessor… gcc -E checking for unistd.h… yes checking for getpagesize… yes checking for working mmap… yes checking for limits.h… yes checking for stddef.h… yes updating cache ../config.cache creating ./config.status 这样这棵构筑树就被配置了,下面可以继续构筑和安装这个包到默认的位置’/usr/local': 复制代码 代码如下:$ make all && make install
一个软件包通过编译源代码安装后,如何完全的卸载?? 如果原先的source还在的话,很多source的Makefile都有写uninstall规则,直接在Souce里make uninstall就可行,不过碰到无良作者没写的,那一句一句看Makefile里install部分他都干了些什么,然后挨个删除。 到目前为止, 我装的都可以make uninstall……. |
请发表评论