Ubuntu रेल स्थापित zlib पर विफल रहता है


128

मैं सिर्फ अपने देव बॉक्स के रूप में उबंटू 8.10 पर चला गया हूं; यह एक रोजाना उपयोग होने वाले OS के रूप में लिनक्स में मेरा पहला गंभीर फ़ॉरेस्ट है, और मुझे एक कठिन समय मिल रहा है कि रेल जा रही है। मैंने कई ट्यूटोरियल का अनुसरण किया है जो सभी ठीक काम करने लगते हैं, लेकिन जब मैं किसी भी चीज़ पर मणि स्थापित करने या मणि अद्यतन का उपयोग करने की कोशिश करता हूं, तो मुझे एक त्रुटि मिलती है जो इस तरह दिखती है:

/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- zlib (LoadError)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:1
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/commands/update_command.rb:5
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:167:in `load_and_instantiate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:88:in `[]'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:144:in `find_command'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:131:in `process_args'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:102:in `run'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/gem_runner.rb:58:in `run'
from /usr/local/bin/gem:21

मेरे पास (ट्यूटोरियल में अनुशंसित) zlib, zlib1g और zlib1g-dev स्थापित है। मैं भी इस विशेष समस्या पर कुछ ट्यूटोरियल मिल गया है (सभी मेरे अलावा अन्य जायके के लिए, हालांकि) लेकिन वे मदद नहीं की।

मैं Ubuntu 8.10 पर हूं, रूबी संस्करण 1.8.8देव मणि संस्करण 1.3.2

मैंने माणिक और रत्नों को एक दूसरे से अलग करने की कोशिश की है, कोई फायदा नहीं हुआ।


23
"उबंटू नॉब रेल्स ज़्लिब पर विफल रहता है" वाह। यह अब तक की सबसे खूबसूरत कविता की तरह है।
नास्त्रेदना

3
apt-get install zlib1g zlib1g-dev ने मेरे लिए Ubuntu 10.04 पर काम किया
bioneuralnet


जवाबों:


297

यदि आप इस सवाल पर आते हैं, तो उबंटू 10.04 पर रूबी संस्करण प्रबंधक (आरवीएम) का उपयोग करके रूबी को स्थापित करने की कोशिश कर रहा है, फिर आरवीएम वेब साइट http://rvm.beginrescueend.com/packages/zlib पर zlib स्थापित करने के निर्देश हैं

कदम हैं:

rvm pkg install zlib

(या rvm package install zlibयदि आपको "ERROR: अपरिचित कमांड लाइन तर्क: 'pkg'" मिलता है - rvm के पुराने संस्करणों ने क्रिया 'पैकेज' का उपयोग किया है)

फिर

rvm remove 1.9.1
rvm install 1.9.1

33
महान, एक ही दृष्टिकोण ने मेरे लिए 1.9.2 के मामूली बदलाव के साथ काम किया: vm पैकेज स्थापित zlib; rvm 1.9.1-p0 निकालें; rvm 1.9.1-p0 --with-zlib-dir = $ rvm_path / usr
tardate को

1
अद्भुत, मैं सोच रहा था कि rvm डेबियन पर काम क्यों नहीं कर रहा था यहां तक ​​कि zlib के माध्यम से
एप्ट के

11
एक ही परेशानी थी, आखिरकार यह मेरे लिए काम कर पाया:vm package install zib; rvm remove 1.9.2; rvm install 1.9.2 --with-zlib-dir=$rvm_path/usr
टिमडॉग

आपका बहुत बहुत धन्यवाद! मुझे भी बिल्कुल यही समस्या है। मुझे सिर्फ "1.9.1" को उबंटू में "री" के साथ बदलना था। +1!
किकिटो

1
pkgदूसरे विकल्प को शामिल करने के लिए धन्यवाद !
जस्टिन

52

मैं Ubuntu 10.04 (ल्यूसिड) का उपयोग कर रहा हूं, मैं रूबी 1.9.2 स्थापित करना चाहता था क्योंकि 1.9.1 रेल्स के साथ अनुशंसित नहीं है। इसलिए मैंने 1.9.2 के लिए स्रोत डाउनलोड किया और इसे अनज़िप्ड / अनारक्षित किया। मेरा स्रोत डिस्ट्रो रूबी-1.9.2-p0 है। इसे अनपैक करने के बाद, मैंने इस प्रकार से zlib का निर्माण किया:

cd ruby-1.9.2-p0/ext/zlib
ruby extconf.rb
make
sudo make install
sudo gem install rails

उस समस्या को ठीक किया। यह वही है जो अन्य लोगों ने ऊपर पोस्ट किया है, लेकिन ठीक नहीं है, इसलिए मुझे लगा कि मैं ठीक वैसा ही पोस्ट कर सकता हूं जैसा मैंने इसे पाने के लिए किया था।


2
यह मुझे मिला सबसे अच्छा संसाधन है। मैंने आरवीएम के बिना स्रोत से रूबी स्थापित किया, और ज़्लिब के साथ एक समस्या प्राप्त की। यह पोस्ट बहुत मदद करती है। धन्यवाद!
क्रिस्टियन

1
धन्यवाद! 1.9.2-p136 / Ubuntu 10.04.1 पर समस्या को हल करता है।
mgutz

धन्यवाद। 1.9.2-p180 / Red Hat 4.1.2-46 पर भी समस्या को ठीक करता है।
एडेलार्स्क

इसने उबंटू के लिए 11.04 / रूबी 1.9.2-p180 के लिए काम किया। मैंने कोशिश की, apt-get install zlib1g zlib1g-devलेकिन यह काम नहीं किया (यह संभव है कि zlib1g-devमैं रूबी संकलित करने से पहले स्थापित नहीं था)।
मैक्स मैनिक

लगता है जब आप स्रोत से माणिक स्थापित करते हैं तब भी आपको इसकी आवश्यकता होती है। यह निश्चित नहीं है कि यह डिफ़ॉल्ट रूप से क्यों स्थापित नहीं है
nimrodm

22

मुझे CentOS में एक ही समस्या है और इसे निम्न कमांड निष्पादित करके ठीक करें:

सबसे पहले, मैं यह सुनिश्चित करता हूं कि zlib और zlib-devel मौजूद हैं (जैसे ऊपर दिए गए कई सुझाव)।

yum install zlib zlib-devel

दूसरा, मैंने zlib के स्रोतों को पुन: स्थापित और स्थापित किया है जो रूबी के साथ आता है।

cd /home/myname/installers/ruby-1.8.7-p174/ext/zlib/
ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib
make
make install

यह आदेश समस्या को ठीक करने के लिए लगता है, फिर मैं निष्पादित करता हूं gem update --systemऔर zlib के साथ त्रुटि गायब हो गई। फिर मैं मणि स्थापित रेल के साथ रेल स्थापित करता हूं। उल्लेख करने के लिए मैंने पहले मणि को स्थापित किया था, और फिर से स्थापित करने और zlib स्थापित करने के लिए, मैं न तो रीकंपाइल स्थापित करता हूं और न ही मणि को स्थापित करता हूं (वास्तव में मुझे नहीं पता है कि इसे कैसे अनइंस्टॉल करें क्योंकि मुझे ऐसा करने के लिए स्क्रिप्ट नहीं मिली है)

यह मेरे लिए काम करता है ... आपसे आशा करता हूं।

सादर।


13

प्रयत्न

aptitude install zlib1g-dev

फिर अपने व्यवसाय के बारे में जाने।


रूबी स्रोत के साथ आए ज़ालिब को संकलित करने में सक्षम होने से पहले मुझे वास्तव में ऐसा करना था
जेरेमी व्हाइट

8

मुझे वास्तव में इनमें से कोई जवाब पसंद नहीं आया ... कोई भी वास्तव में उपयोगकर्ताओं की वास्तविक जरूरतों और सवाल पर ध्यान केंद्रित नहीं किया ... बस लोगों ने बताया कि उन्होंने क्या किया ... कोई संदर्भ नहीं और यह मेरे लिए भी काम नहीं आया ...

इसलिए, ..

मैं एक नया बॉक्स उबंटू 8.04 एलटीएस 64-बिट स्थापित कर रहा हूं ...

तो मैं ...

cd ~  
wget ftp://ftp.ruby-lang.org//pub/ruby/1.9/ruby-1.9.2-p180.tar.gz  
tar -xvvf ruby-1.9.2-p180.tar.gz  
cd ruby-*  
./configure  
make  
install  
sudo make install  

और फिर मुझे यह समस्या है ...

gem list

यह काम नहीं करता है ... zLib के बारे में कुछ बकवास नहीं मिला ...

तो, मैं वास्तव में README को पढ़ता हूं और पाता हूं कि मुझे एक फाइल को संपादित करने की आवश्यकता है ...

[my ruby source directory]/ext/Setup

और UN-COMMENT लाइन में zLib के साथ ... पहले कॉलम में "#" को हटाकर

फिर मैं फिर से कमांड चलाता हूं ... संदर्भ के लिए यहां शामिल ...

./configure
make  
install  
sudo make install  

और सब कुछ ठीक है ... यह तार्किक है ... और "rvm" और अन्य से रहित है ... "इसे काम करने के लिए अधिक सामान स्थापित करें" प्रकार समाधान।

Joet


मेरे लिए मदद नहीं करता है। मैंने रीडमी को भी पढ़ा, और इसके निर्देशों का पालन किया, लेकिन उसके बाद भी मुझे काम करने के लिए माणिक रत्न नहीं मिले, इसके साथ ही यह अब भी नहीं कहा जाता है ...
जेनी

वास्तव में उत्तर प्रासंगिक है क्योंकि यह rvm का उपयोग करते समय एक आम समस्या है। आपका उत्तर उन लोगों के लिए अधिक उपयुक्त है जो rvm का उपयोग नहीं करते हैं।
फोमिनो

7

बस गोटो रूबी स्रोत पैकेज, इसे खोल दो।

गोटो / आपकी रूबी-दिर / ext / zlib

ruby extconf.rb
make
sudo make install

यदि पैकेज गायब हैं, तो यह आपको बताएगा, मुख्य रूप से libzlib संबंधित पैकेज

सादर

सौरभ


6
rvm package install zlib
rvm remove 1.9.1
rvm install 1.9.1

यही किया। कई जंगली हंस पीछा करने के बाद, मुझे खुशी है कि मुझे यह पृष्ठ मिला।


1
FYI करें - 'पैकेज' को rvm के अधिक हालिया संस्करण में 'pkg' में बदल दिया गया है। देखिए github.com/wayneeseguin/rvm/pull/345
John MacIntyre

4

हाँ, और वह काम भी नहीं किया। यह एक और स्रोत से मिला, यह अंत में मेरे लिए किया जहां अन्य सामान विफल रहा।

wget http://www.blue.sky.or.jp/atelier/ruby/ruby-zlib-0.6.0.tar.gz
tar xvzf ruby-zlib-0.6.0.tar.gz
cd ruby-zlib-0.6.0
ruby extconf.rb && make
sudo make install

स्रोत से माणिक रत्न की स्थापना करें

वैसे भी धन्यवाद, दोस्तों।


1
मुझे extconf.rb चलाने में समस्या थी। इसे (शायद) zlib-devel स्थापित करके हल किया।
gregers

मुझे भी। और सब कुछ करने की कोशिश की, और अंत में नीला.आशा.ओआर.जेपी ने मुझे बचाया। धन्यवाद।
अभिषेक

2

समस्या यह है कि Ubuntu पर रूबी zlib के खिलाफ नहीं बनाया गया है; आप रूबी को स्थापित करने के लिए एक स्रोत बनाना चाहते हैं। आप इसके साथ कर सकते हैंapt-get source -b ruby


ठीक है, फिर से, linux noob। पता नहीं आपने क्या कहा। जबरदस्त हंसी। मेरा मतलब है, मैं कमान समझता हूं; लेकिन उसके बाद मैं क्या करूँ?
पॉल

अच्छा, अब, यहां तक ​​कि बहुत काम नहीं किया। मुझे "बिल्ड कमांड 'सीडी रूबी-डिफॉल्ट्स-4.2 और& dpkg-buildpackage -b' -uc 'मिली" त्रुटि
पॉल

2

क्या आप apt-get libzlib-ruby स्थापित करने का प्रयास करते हैं?

माणिक्य से रूबीज भी स्थापित करें। मुझे उबंटू में रूबीज पैकेज पसंद नहीं है।


2

डेबियन (निचोड़) पर:

लाइब्रबी में अन्य सभी सामानों के बीच माणिक के लिए ज़ालिब होता है, जिसे आपको डेबियन पर ठीक से काम करने की आवश्यकता होगी। इसलिए...

apt-get install libruby

फिर...

cd /usr/local/src/ruby
make clean
make
make install
cd ../rubygems
ruby setup.rb
gem install rails

इसने मेरे लिए यह काम किया, लेकिन आपका माइलेज अलग हो सकता है। मैंने ज़िबेब के पास एक छोटी सी बन्दूक के दृष्टिकोण के लिए किया था, इससे पहले कि लिब्रुबी द्वारा कवर की गई हर चीज की आवश्यकता हो।


1

आप फ़्यूज़न साइट पर रूबी एंटरप्राइज़ डेब पैकेज डाउनलोड करने का प्रयास कर सकते हैं । और पैकेज के माध्यम से यात्री को स्थापित करें। यहां दिए गए निर्देशों का पालन करें । या आप यहां मिली बैश स्क्रिप्ट को आजमा सकते हैं


0

रेल चलाते समय मैं रूबी 1.8.8देव का उपयोग करने की अनुशंसा नहीं करूंगा। 1.8.6 के साथ छड़ी, अधिमानतः रूबी एंटरप्राइज संस्करण। इस पोस्ट को RailsLab पर देखें कि अन्य लोग क्या उपयोग कर रहे हैं।

यदि आप उच्च तकनीक पर जोर देते हैं, तो रूबी 1.9.1 स्थापित करें।

लेकिन दोनों ही मामलों में इसे स्वयं निर्मित करते हैं या मारन्स सुझाव का उपयोग करते हैं।


यह बुरी सलाह है, रेल के साथ 1.9.1 का उपयोग न करें। हालांकि 1.9.2+ ठीक काम करता है।
xaxxon

यह टिप्पणी 2 साल पहले रखी गई थी ... अब 1.9.3 निश्चित रूप से जाने का रास्ता होगा।
नुकसान

यकीन है, मैं इसके साथ ठीक हूँ। लेकिन किसी के लिए यह जानना महत्वपूर्ण है कि यह गलत है।
xxxon
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.