上一篇:Vue语法笔记(2023-06-05 09:55:38)
文章大纲

没有configure文件时该如何编译安装?例如oniguruma文件包

2023-06-15 14:36:10

安装php8之前,要先安装oniguruma,因为一些字符串处理函数依赖这个东西。

下载地址:https://github.com/kkos/oniguruma/archive/v6.9.4.tar.gz


安装包含有configure文件

有的安装包直接就含有configure文件,就直接在安装包目录下,执行2行命令安装即可。

./configure
make && make install


安装不含有configure文件

但是有的安装包没有configure文件(configure.ac文件不算)

执行./configure命令,就会报错:

./configure: No such file or directory


这种情况安装包下会有autogen.sh脚本文件,执行

./autogen.sh

即可。


本文安装oniguruma,执行autogen成功后,有如下提示:

[root@CN0015VMC03038 oniguruma-6.9.4]# ./autogen.sh
Generating autotools files.
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'


possibly undefined macro: AM_CONDITIONAL

如果一开始错误的执行了autoconf命令,也会生成configure文件。

但是就会报

possibly undefined macro: AM_CONDITIONAL

这种错误。


执行configure命令时,又会报

syntax error near unexpected token `-Wno-portability'

错误。

具体如下:
./configure: line 2341: syntax error near unexpected token `-Wno-portability'
./configure: line 2341: `AM_INIT_AUTOMAKE(-Wno-portability)'


经验总结

所以举一反三,凡是没有configure文件时,都可以通过下面方式编译安装:
执行autogen.sh脚本,而不要执行autoconf、automake这些命令


上一篇:Vue语法笔记(2023-06-05 09:55:38)
我要评论
评论列表