簡體   English   中英

由於編譯Unf_ext時出錯,無法捆綁安裝

[英]Cannot Bundle Install due to an error compiling Unf_ext '

我正在嘗試在運行Debian Jesse(手臂)的樹莓派3上安裝Huginn。 嘗試安裝unf_ext時,Bundle安裝失敗:

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /tmp/bundler20161007-16062-unp7l7unf_ext-0.0.7.1/gems/unf_ext-0.0.7.1/ext/unf_ext
/usr/bin/ruby2.3 -r ./siteconf20161007-16062-wdgukt.rb extconf.rb

當我嘗試:sudo gem install unf_ext -v'0.0.7.1'我收到以下錯誤:

current directory: /tmp/bundler20161007-16062-unp7l7unf_ext-0.0.7.1/gems/unf_ext-0.0.7.1/ext/unf_ext
make "DESTDIR="
compiling unf.cc
In file included from unf/normalizer.hh:10:0,
             from unf.cc:1:

unf/table.hh:13539:25: error: narrowing conversion of ‘-27’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
  -77, -39,-124, -39,-123};

上面是一個很長的錯誤列表:縮小##從int到char里面的轉換{} [-Wnarrowing]錯誤

我正在編譯:6.1.1 20160802(Raspbian 6.1.1-11 + rpi1)

我嘗試過gem更新,但這並沒有幫助。 也沒有在ext / unf_ext / extconf.rb中添加標志

+$CXXFLAGS += " -fsigned-char "
+

我是所有這些的初學者,所以任何幫助將不勝感激。 謝謝。

注意:我已經在Github上發布了我的寶石,以節省人們制作自己的精力。 如果你想使用我的,那么只需運行以下兩個命令:

wget https://github.com/appleorange1/unf_ext-0.0.6-arm/raw/master/unf_ext-0.0.6.gem
gem install ./unf_ext-0.0.6.gem

如果您想了解我是如何做到的,請繼續閱讀:

我也遇到過這個問題(在Chromebook C201PA上)。 問題是當您運行“gem install”時,對ext / unf_ext / extconf.rb的更改會被覆蓋。 我不確定為什么會這樣,但我通過創建一個本地gem來解決這個問題。

為此,請從此頁面下載所需的上游gem版本。 我使用的是版本0.0.6。

然后,解壓縮上游gem:

gem unpack unf_ext-0.0.6.gem

在提取上游gem之后,將其重命名,以免您將其與本地gem混淆。 (你不必這樣做;這只是一個建議。)

mv unf_ext-0.0.6.gem unf_ext-0.0.6-upstream.gem

現在,進入解壓縮的寶石。

cd unf_ext-0.0.6

然后,將$CXXFLAGS += ' -fsigned-char'行添加到ext/unf_ext/extconf.rb文件中。 (我把它放在第三行,就在have_library('stdc++') 。)

vi ext/unf_ext/extconf.rb

然后,您可以構建並安裝gem:

gem build unf_ext.gemspec
gem install ./unf_ext-0.0.6.gem

我在Rails項目的Gemfile.lock中捆綁的更高版本出現了類似的錯誤:

bundle install

它叫:

gem install unf_ext -v '0.0.7.2'

我能夠修改Gemfile.lock並將unf_ext版本更改為0.0.7.4 ; unf_ext庫已於2017年4月更新,包括ARM處理器支持。 這里閱讀GitHub問題。

這並不像默默無聞的回答那么全面,可能會破壞你的解決方案。 未經仔細考慮,請勿更改鎖定的版本字符串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM