2012-06-25 36 views
2

我想對紅寶石1.9.3安裝的iconv(GEM),但是當我運行它的失敗:當失敗的紅寶石安裝的iconv 1.9.3

創業板安裝的iconv

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

     /home/adhown/.rbenv/versions/1.9.3-p0/bin/ruby extconf.rb 
checking for iconv() in iconv.h... yes 
checking for const of iconv() 2nd argument... no 
creating Makefile 

make 
compiling iconv.c 
In file included from iconv.c:21:0: 
/home/adhown/.rbenv/versions/1.9.3-p0/include/ruby-1.9.1/ruby/backward/st.h:2:2: warning: #warning use "ruby/st.h" instead of bare "st.h" [-Wcpp] 
iconv.c:22:20: fatal error: intern.h: No such file or directory 
compilation terminated. 
make: *** [iconv.o] Error 1 


Gem files will remain installed in /home/adhown/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/iconv-0.1 for inspection. 
Results logged to /home/adhown/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/iconv-0.1/ext/iconv/gem_make.out 

和我安裝紅寶石與rbenv是否有關?

任何人都知道如何解決它,謝謝。

+1

你爲什麼要安裝語言Iconv?這是標準庫的一部分(http://ruby-doc.org/stdlib-1.9.3/libdoc/iconv/rdoc/index.html),通常你會使用String方法。 –

+0

我想安裝jekyll,並且在啓動jekyll時出錯,錯誤是: ruby​​gems/custom_require.rb:36:在'require':iconv將來會被棄用,請使用String#encode。 – adhown

+0

並且「iconv將來會被棄用,使用String#encode」意味着iconv正在消失,轉而支持String上的方法,因此不需要手動安裝Iconv。你正試圖解決錯誤的問題。 –

回答

0

移除iconv gem並改爲使用String#encode。

這將返回my_string_variable UTF-8的字符串拷貝編碼:

my_string_variable.encode('utf-8', {:invalid => :replace, :undef => :replace, :replace => ''})  

見:Ruby-Doc