2010-03-11 6 views
7

rvm ruby ​​1.9.1에서 nokogiri gem을 설치하는 데 문제가 있습니다.RVM 1.9.1 & nokogiri

gem install nokogiri 

내가 갖는이 ...

/usr/include/libxml2... no 
libxml2 is missing. try 'port install libxml2' or 'yum install libxml2-devel' 
*** extconf.rb failed *** 

하지만 난 확인 :

sudo apt-get install libxml2 

과 내가 가지고 :

Reading state information... Done 
libxml2 is already the newest version. 

이 아마도 루트 일이? RVM은 사용자 공간에서 모든 것을 실행합니다.

+0

http://blog.lostincode.net/archives/2010/1/2/installing_gems_with_native_extensions/looks good – scaney

+1

아 - 우분투의 libxml2-dev가 아닌 libxml2-devel – scaney

+0

우분투에서'sudo apt-get install ruby-nokogiri'라고 제안되었습니다. – isomorphismes

답변

3

apt가 설치 한 libxml의 버전이 최신인지 확인하고자 할 수 있습니다. Nokogiri는 멋진 새 버전의 libxml을 좋아하므로 원본에서 libxml 설치를 구축했습니다.

nokogiri -v는 사용중인 것을 알려줍니다.

+0

팁을 환호합니다! – scaney

+0

문제 없습니다. 나는 여러 번 문제를 겪었는데, 나는 당신을위한 패스에서 그것을 헤쳐 나가야한다고 생각했다. –

2

Mac에서 homebrew를 사용하여 비슷한 문제가 발생했습니다.

트릭을 수행하는 코드는 다음과 같습니다. 자작 나무를위한 Nokogiri 설치 지침의 작은 확장입니다. 기본적으로, nokogiri에 자작 libxml 디렉토리를 사용하라는 지시를 포함해야합니다. 확인 당신이 나를 위해 2.7.8이었다 사제가 설치 libxml2를 올바른 버전을 가리 확인 :

brew install libxml2 

brew link libxml2 #this may be enough but didn't work for me with rvm 

#explicitly tell nokogiri to use you homebrew libxml2 rather than system 
gem install nokogiri -- --with-xml2-include=/usr/local/Cellar/libxml2/2.7.8/include/libxml2 --with-xml2-lib=/usr/local/Cellar/libxml2/2.7.8/lib --with-xslt-dir=/usr/local/Cellar/libxslt/1.1.26 
10

간단한 해결책 :

sudo apt-get install libxslt-dev libxml2-dev 
+1

고마워요! libxml2-dev는 우분투에서 누락 된 부분입니다. nokogiri를 설치하는 데 큰 도움이됩니다. – Antony

+0

'yum install libxml2-devel libxslt-devel'이 내 centos 상자에서 작동했습니다. 고마워요! – JaredMcAteer