-->

不能建立宝石 - 原生扩展构建失败 - 你可以看到为什么?(Can't build gem

2019-09-28 17:40发布

我也弄不清是怎么回事错在这里 - 任何想法?

我对Ubuntu的8.04运行,并且已经安装了这些指令libxml2和的libxslt:

http://www.techsww.com/tutorials/libraries/libxml/installation/installing_libxml_on_ubuntu_linux.php

http://www.techsww.com/tutorials/libraries/libxslt/installation/installing_libxslt_on_ubuntu_linux.php

但是,我安装了最新版本:

的libxslt-1.1.24
libxml2-2.7.3

安装很顺利

--------------------我设置LD_LIBRARY_PATH --------------------------- -------

回声$LD_LIBRARY_PATH
在/ usr /本地/的libxslt / lib目录下:

-------------好像该函数是本 - 至少基于串的输出------------
在/ usr /本地/的libxslt / lib目录$字符串* | grep的ParseStylesheetDoc
xsltParseStylesheetDoc
xsltParseStylesheetDoc
xsltParseStylesheetDoc
xsltParseStylesheetDoc
xsltParseStylesheetDoc
xsltParseStylesheetDoc
xsltParseStylesheetDoc

-----------------------但编译仍然失败---------------------- ------------------

sudo的创业板安装webrat
构建本机扩展。 这可能需要一段时间...
错误:错误安装webrat:
错误:无法建立宝石原生扩展。

在/ usr / local / bin目录/红宝石extconf.rb安装webrat
检查iconv.h在/ opt /本地/包括/,/选择/本地/包括/ libxml2的,/选择/本地/包括/选择/本地/包括/选择/本地/包括/ libxml2的,在/ usr /本地/包括在/ usr /本地/包括/ libxml2的,在/ usr /本地/包括,在/ usr /本地/包括/ libxml2的,/ usr / include目录,/ usr / include目录/ libxml2的......是的
检查的libxml / parser.h在/ opt /本地/包括/,/选择/本地/包括/ libxml2的,/选择/本地/包括/选择/本地/包括/选择/本地/包括/ libxml2的,在/ usr /本地/包括,在/ usr /本地/包括/ libxml2的,在/ usr /本地/包括,在/ usr /本地/包括/ libxml2的,/ usr / include目录,/ usr / include目录/ libxml2的......是的
检查的libxslt / xslt.h在/ opt /本地/包括/,/选择/本地/包括/ libxml2的,/选择/本地/包括/选择/本地/包括/选择/本地/包括/ libxml2的,在/ usr /本地/包括,在/ usr /本地/包括/ libxml2的,在/ usr /本地/包括,在/ usr /本地/包括/ libxml2的,/ usr / include目录,/ usr / include目录/ libxml2的......是的
检查libexslt / exslt.h在/ opt /本地/包括/,/选择/本地/包括/ libxml2的,/选择/本地/包括/选择/本地/包括/选择/本地/包括/ libxml2的,在/ usr /本地/包括,在/ usr /本地/包括/ libxml2的,在/ usr /本地/包括,在/ usr /本地/包括/ libxml2的,/ usr / include目录,/ usr / include目录/ libxml2的......是的
在-lxml2检查xmlParseDoc()...是的
检查中-lxslt xsltParseStylesheetDoc()...没有
是的libxslt失踪。 尝试“口安装的libxslt”或“百胜安装的libxslt-devel的”
*** extconf.rb failed ***
无法创建Makefile文件由于某些原因,可能是缺乏
必需的库和/或报头。 检查mkmf.log文件以了解更多
细节。 您可能需要配置选项。

Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/local/bin/ruby
--with-iconv-dir
--without-iconv-dir
--with-iconv-include
--without-iconv-include=${iconv-dir}/include
--with-iconv-lib
--without-iconv-lib=${iconv-dir}/lib
--with-xml2-dir
--without-xml2-dir
--with-xml2-include
--without-xml2-include=${xml2-dir}/include
--with-xml2-lib
--without-xml2-lib=${xml2-dir}/lib
--with-xslt-dir
--without-xslt-dir
--with-xslt-include
--without-xslt-include=${xslt-dir}/include
--with-xslt-lib
--without-xslt-lib=${xslt-dir}/lib
--with-xml2lib
--without-xml2lib
--with-xsltlib
--without-xsltlib

宝石文件仍将安装在/usr/local/lib/ruby/gems/1.8/gems/nokogiri-1.3.3进行检查。
结果记录到/usr/local/lib/ruby/gems/1.8/gems/nokogiri-1.3.3/ext/nokogiri/gem_make.out

Answer 1:

尝试取出*的libxslt并重新安装它们。 这固定我的问题。



Answer 2:

在Ubuntu中,你需要遵循以下步骤:命令和apt-get安装的libxml2-dev的命令和apt-get安装的libxslt-dev的



Answer 3:

贾里德·埃文斯在这个岗位上他的博客中,描述了为我工作在Ubuntu 8.04的解决方案。 他的诀窍是不使用apt-get安装RubyGems的,而是从源代码编译它。 这个工作对我来说太棒了。 他的职位是针对安装rails ,所以我用它从这些(略有修改)的步骤只安装引入nokogiri:

首先安装红宝石APT-GET

 sudo apt-get update
 sudo apt-get install ruby irb ri rdoc ruby1.8-dev libzlib-ruby
  libyaml-ruby libreadline-ruby libncurses-ruby libcurses-ruby libruby
  libruby-extras libfcgi-ruby1.8 build-essential libopenssl-ruby
  libdbm-ruby libdbi-ruby libdbd-sqlite3-ruby sqlite3 libsqlite3-dev
  libsqlite3-ruby libxml-ruby libxml2-dev

除了Jared的指示,我也装了(我不能肯定libxslt1.1是必要的):

 sudo apt-get install libxslt1.1
 sudo apt-get install libxslt1-dev

首先,下载RubyGems来源:

下载最新的RubyGems来自RubyForge的(目前为1.3.6)(我用的是zip包)。

BUILD RubyGems的:

 cd /TO/DIRECTORY/WHERE/YOU/UNZIPPED/rubygems-1.3.6/
 sudo ruby setup.rb
 sudo ln -s /usr/bin/gem1.8 /usr/bin/gem

INSTALL引入nokogiri:

 sudo gem update –system
 sudo gem install nokogiri

的响应将是:

1 gem installed
Installing ri documentation for nokogiri-1.4.1...

No definition for parse_memory

No definition for parse_file

No definition for parse_with

No definition for get_options

No definition for set_options
Installing RDoc documentation for nokogiri-1.4.1...

No definition for parse_memory

No definition for parse_file

No definition for parse_with

No definition for get_options

No definition for set_options

我还没有注意到造成“无定义”消息的任何问题...



Answer 4:

你必须安装这些库的开发包。



Answer 5:

试图安装到非标准位置(因为我没有超出我的主目录访问目录)时,我得到了同样的错误。 看来,如果这个答案只是安装在/ usr成功的默认位置。 还是我误解?

什么我试图在做更多的上下文http://groups.google.com/group/nokogiri-talk/browse_thread/thread/c1e909be09e90f5a ,如果这是有帮助的。



Answer 6:

这里是为我工作在Ubuntu 11.04(整洁的):

sudo apt-get install libxslt-dev libxml2-dev

sudo gem install nokogiri



文章来源: Can't build gem — native extension build fails — can you see why?
标签: webrat