ruby - gem 构建 "recipe for target ' stemmer.so' 失败”

标签 ruby gem cygwin jekyll

当使用 gem install jekyll 从 gem 安装 Jekyll 时,出现以下构建错误。我在 Windows 7 上使用 Cygwin,并在安装之前从源代码构建了 posix-spawn gem。

Building native extensions.  This could take a while...
ERROR:  Error installing jekyll-1.1.2.gem:
        ERROR: Failed to build gem native extension.

    /usr/bin/ruby.exe extconf.rb
creating Makefile

make
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I.   -ggdb -O2 -pipe   -fno-strict-aliasing   -o porter.o -c porter.c
gcc -I. -I/usr/include/ruby-1.9.1/x86_64-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I.   -ggdb -O2 -pipe   -fno-strict-aliasing   -o porter_wrap.o -c porter_wrap.c
rm -f stemmer.so
gcc -shared -o stemmer.so porter.o porter_wrap.o -L. -L/usr/lib -L.  -Wl,--export-all-symbols -Wl,--enable-auto-image-base,--enable-auto-import    -lruby191  -lpthread -lrt -ldl -lcrypt
/usr/lib/gcc/x86_64-pc-cygwin/4.8.1/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lcrypt
collect2: error: ld returned 1 exit status
Makefile:214: recipe for target `stemmer.so' failed
make: *** [stemmer.so] Error 1


Gem files will remain installed in /usr/lib/ruby/gems/1.9.1/gems/fast-stemmer-1.0.2 for inspection.
Results logged to /usr/lib/ruby/gems/1.9.1/gems/fast-stemmer-1.0.2/ext/gem_make.out

我正在使用 gem v2.0.7ruby v1.9.3p448gcc v4.8.1g++ v4.8.1

有什么想法吗?对于 Ruby gems,我一无所知。我找不到关于这个“词干分析器”的任何信息。

最佳答案

原来这个错误的症结在于cannot find -lcrypt。我安装了 libcrypt-devel,之后 gem 编译正常。

我认为在大多数本地 Linux 发行版中,这个库已经包含在内了!

关于ruby - gem 构建 "recipe for target ' stemmer.so' 失败”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18467107/

相关文章:

mysql - 在 ruby​​ 中替换数字后的每个\n

ruby - Process::detach 和 Process::wait 是否互斥(Ruby)?

ruby-on-rails - rails 4 : List of available datatypes

ruby - 使用带有两个源的 gem install 时指定源

vagrant - Windows 上的 Rsync - dup() 输入/输出/错误失败

ruby - 无法安装 ruby​​-opencv gem

ruby-on-rails - Bundler Gem 是否考虑了您的 Ruby 环境?

ruby-on-rails - 为 Rails 项目创建一个 gem

java - 无法从 Java 程序内部调用 "gcc"

Cygwin 和 WinPcap 4.1.3 时间戳 - 微秒问题 - header->ts.tv_usec 不正确 - C 程序