2017-05-09 69 views
1

我面對這個問題波紋管,當我嘗試安裝Rdmtx寶石的問題:與寶石Rdmtx

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

    /Users/alberto/.rbenv/versions/2.2.5/bin/ruby -r ./siteconf20170508-97735-7c5328.rb extconf.rb 
checking for main() in -ldmtx... no 
creating Makefile 

make "DESTDIR=" clean 

make "DESTDIR=" 
compiling Rdmtx.c 
Rdmtx.c:26:10: fatal error: 'dmtx.h' file not found 
#include <dmtx.h> 
     ^
1 error generated. 
make: *** [Rdmtx.o] Error 1 

make failed, exit code 2 

Gem files will remain installed in /Users/alberto/.rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/Rdmtx-0.3.1 for inspection. 
Results logged to /Users/alberto/.rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/extensions/x86_64-darwin-16/2.2.0-static/Rdmtx-0.3.1/gem_make.out 

我已經通過BREW安裝libdmtx但問題remais。

有人可以幫助我嗎?

+0

你需要安裝的文件是'dmtx.h' –

+0

我可以在'/ usr/local/Cellar/libdmtx/0.7.4/include/dmtx.h'找到'dmtx.h',在/ usr /本地/包括/ dmtx.h'。但不知何故寶石安裝不是。 – betogrun

回答

1

我可以在安裝libdtmx之前重現錯誤,但之後按預期方式安裝了gem。或者庫沒有安裝頭文件,或者gem install進程沒有在正確的位置查找。要檢查第一個,看你是否能找到一些標題中/usr

$ find /usr -name dmtx.h 
/usr/local/Cellar/libdmtx/0.7.4/include/dmtx.h 
/usr/local/include/dmtx.h 

你可以嘗試運行brew doctor,看看是否有任何問題。如果這變成了什麼,請確保在運行brew config,你看行,看起來像:

HOMEBREW_PREFIX: /usr/local 

如果該文件是安裝在/usr/local/include寶石安裝不能看那裏。然而,不知道該怎麼辦。

+0

我想知道rherv是否正常工作。因爲我能夠找到'dtmx.h',並且我的HOMEBREW_PREFIX也被設置爲'/ usr/local /'。 – betogrun

0

這是正確的凱瑟琳,出於某種原因,寶石安裝沒有找到正確的地方,所以我需要指定安裝lib的路徑: gem install Rdmtx -v '0.2.2' -- --with-opt-include="/usr/local/include"解決了這個問題。