【Msys2下编译grep2.1x】

续前文,讲一讲老环境下的软件编译的一些坑,这次是grep2.1x。

其实编译grep2.1x最好还是在mingGW下编译,但是懒得去整理了,就在Msys2下吧。

Msys2维持稳定的更新,但是旧的环境就丢失了。在某个网站上找到了它为了维护自己的软件留下的Msys2的旧版本20160205版本(msys2-base-i686-20160205.tar.xz),以及不完整的mingw32 toolchain,这个版本最大的问题,是没有msys2的toolchain,以至于造成了很多困难。

以后的系列文章都以这个版本为基础。

首先,里面没有grep。grep是Unix下强大的GNU文本搜索工具,由于编译脚本都要用到它,几乎是编译GNU软件的必备工具。

在mirrors.kernel.org/gnu/里可以找到各种GNU软件的各个版本,下载grep2.16进行编译。

$ ./configure --build=i586-w64-mingw32 CC="gcc"
可以看到很多找不到grep的提示,如

checking whether fgets_unlocked is declared... ./configure: line 2527: grep: command not found

但是能通过,然后在make时出错:

Makefile:1561: .deps/xstriconv.Po: No such file or directory
Makefile:1562: .deps/xstrtoimax.Po: No such file or directory
Makefile:1563: .deps/xstrtol-error.Po: No such file or directory
......

即一堆.deps/*.po找不到。Stackoverflow上回答是automake的bug,可以删掉"AUTOMAKE_OPTIONS = subdir-objects" in the Makefile.am.
或使用如下命令:
    autoreconf -if
    ./configure
来解决。这是胡说。只要把automake和alocal换成1.12版本就OK了。

make

OK。make install还是有错误,不能安装到目录。无所谓了,拷贝.exe到usr/bin就行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值