2015-12-02 71 views
2

我试图构建一个依赖于tiny_tds 0.6.3.rc1的ruby项目,在尝试构建本地gem时失败。哪里可以找到ubuntu 14.04上的iconv.h?

gem install tiny_tds -v '0.6.3.rc1'失败,一个有用的寻找节内容如下:

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

    /home/deploy/.rvm/rubies/ruby-2.1.7/bin/ruby -r ./siteconf20151202-9469-rxbbcc.rb extconf.rb 
checking for iconv_open() in iconv.h... *** extconf.rb failed *** 
Could not create Makefile due to some reason, probably lack of necessary 
libraries and/or headers. Check the mkmf.log file for more details. You may 
need configuration options. 

的消息很清楚,我需要iconv.h,这我通常只是通过sudo apt-get install libiconv安装,只是似乎libiconv的这不是Ubuntu 14.04的一种想法。

我碰到一个丢失的包,还是有一些简单的我失踪?

[编辑] ​​回来了E: Unable to locate package libiconv-dev

一个简短的搜索包资源库的表明,它似乎并不存在:

$ lsb_release -a 
No LSB modules are available. 
Distributor ID: Ubuntu 
Description: Ubuntu 14.04.3 LTS 
Release: 14.04 
Codename: trusty 

$ apt-cache search libiconv 
librecode0 - Shared library on which recode is based 
recode - Character set conversion utility 
cl-babel - A charset encoding/decoding library, not unlike GNU libiconv 
enca - Extremely Naive Charset Analyser - binaries 
libiconv-hook-dev - header files of libiconv-hook 
libiconv-hook1 - extension of iconv for libapache-mod-encoding 
+0

还应该有一个'-dev'包含头文件。非dev软件包只包含lib。 –

+0

感谢您的企图@ t.niese - 可悲的是,我似乎运气不好。更多谷歌搜索显示,我可能只需要从gnu org站点下载源代码并手动安装。 –

+0

你安装了'sudo apt-get install build-essentials'吗? –

回答

0

问题的根源归结为建筑tiny_tds 0.6.3.rc1。版本0.7.0包含一些魔术来获取libiconv源代码,并自己构建库。在这种情况下,修复是通过一些创意依赖管理升级我的项目使用的tiny_tds版本。

长话短说,libiconv在ubuntu 14.04的aptitude中不可用。