【问题标题】:libpcre.a generating without indexlibpcre.a 生成无索引
【发布时间】:2020-12-03 09:23:24
【问题描述】:

尝试使用 MinGW (msys) 在 Windows 中向 Nginx 添加“hello world”动态模块。 libpcre.a 归档文件生成时没有索引。 Ranlib 和 ar -s 命令不起作用,即使 ranlib 和 ar 存在于 C:/MinGW/bin 中。多次尝试卸载并重新安装该模块,但没有任何帮助。我正在使用 GCC 版本 6.3.0。有没有其他方法可以解决这个问题?

【问题讨论】:

  • 你能用Linux吗?在这种情况下,您可能会发现使用起来要容易得多。

标签: nginx mingw msys


【解决方案1】:

为什么要使用这么古老的 GCC 版本?

安装 MSYS2 并使用最新的 MinGW-w64 版本的 GCC(最新版本为 10.2.0)。 如果您需要独立版本的 MinGW-w64,您可以在 http://winlibs.com/ 获取最新版本。

这样编译时,pcre 8.44 在此环境中构建良好:

INSTALLPREFIX=/usr/local
BUILDPLATFORM=i686-w64-mingw32
RUNPLATFORM=i686-w64-mingw32
#BUILDPLATFORM=x86_64-w64-mingw32
#RUNPLATFORM=x86_64-w64-mingw32
./configure --prefix=$INSTALLPREFIX --build=$BUILDPLATFORM --host=$RUNPLATFORM --enable-utf --enable-unicode-properties --enable-pcre8 --enable-pcre16 --enable-pcre32 --enable-newline-is-anycrlf --enable-bsr-anycrlf --enable-pcregrep-libz --enable-pcregrep-libbz2 --enable-jit --disable-stack-for-recursion CFLAGS="-O3" CXXFLAGS="-O3" LDFLAGS="-Wl,--enable-auto-import" &&
make install-strip &&
echo Success

【讨论】:

  • 我想我的问题还没有说清楚。在从源代码以及 pcre 8.44 和 zlib-1.2.11 构建 Nginx 之后,我在 msys 中使用“make modules”命令向 Nginx 添加动态模块。在给出“make modules”命令之后,我得到了错误:libpcre.a:archive has no index.run ranlib to add one。我的 ./configure 命令正常工作。
  • 查看此链接:stackoverflow.com/questions/2765240/… 解决方案是指定正确的 ar 命令进行配置。
  • 非常感谢!将对此进行调查。
猜你喜欢
  • 2018-01-13
  • 1970-01-01
  • 1970-01-01
  • 2013-06-26
  • 2018-02-11
  • 2011-05-22
  • 2020-06-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多