ওপেনএসএসএল এবং রিডলাইন সমর্থন সহ রুবি ২.০ ইনস্টল করুন


12

আমার একটি নতুন উবুন্টু 12.04 ভিএম রয়েছে এবং আমি রুবি 2.0.0-p0 ইনস্টল করতে চাই। আমি রুবিকে সহজেই ইনস্টল করতে সক্ষম হয়েছি, তবে আমি রত্নকে কাজে লাগাতে পারছি না।

$ gem install bundler
ERROR:  Loading command: install (LoadError)
cannot load such file -- openssl
ERROR:  While executing gem ... (NoMethodError)
    undefined method `invoke_with_build_args' for nil:NilClass

আমি ওপেন এসএসএল ইনস্টল করেছি, সুতরাং সমস্যাটি কী তা আমি ঠিক নিশ্চিত নই।

$ sudo apt-get install libssl1.0.0 libssl-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libssl-dev is already the newest version.
libssl1.0.0 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

একইভাবে,

$ which openssl
/usr/bin/openssl

যদি আমি ইনস্টলেশনটিতে ফিরে যাই তবে দুটি লাইন আমাকে উদ্বেগ করে।

$ sudo make install
Failed to configure openssl. It will not be installed.
Failed to configure readline. It will not be installed.

ধন্যবাদ!

উত্তর:


9

আপনার উত্সের অবস্থানটিতে cd ext/opensslএবং তারপরে ruby extconf.rb। এই Makefile উত্পন্ন করবে EXT / OpenSSL ডিরেক্টরির মধ্যে । কেবল make && sudo make installএটি রুবি ওপেনসেল এক্সটেনশানটি তৈরি করা এবং .so উপযুক্ত জায়গায় ইনস্টল করা।

পাঠ্যরেখার ext/readlineজন্য সমর্থন।

তারপরে আপনার makeসঠিকভাবে রুবি করতে সক্ষম হওয়া উচিত ।

সম্পাদনা করুন : আমি যথেষ্ট পরিষ্কার না হলে:

pushd ext/openssl
ruby extconf.rb
make && sudo make install
popd

pushd ext/readline
ruby extconf.rb
make && sudo make install
popd

make
sudo make install

1
দ্রষ্টব্য: এই উত্তরটি রুবি এবং এর এক্সটেনশন মডিউলটি ম্যানুয়ালি তৈরি এবং ইনস্টল করার জন্য। খাঁটি উপযুক্ত-ভিত্তিক উত্তরের জন্য @ chris-d এর উত্তর দেখুন।
ম্যাট্টি কে

1
আমি তৃতীয় লাইনে আটকে গিয়েছে, বের করার চেষ্টা makeমধ্যে ext/openssl: *** No rule to make target '/include/ruby.h', needed by 'ossl.o'. Stop.একই জিনিসের জন্য ext/readline
জেডএক্স

@ ZX9 আমি একই সমস্যা, সমাধান এখানে আমার জন্য কাজ করেন।
জাগন

5

আমি একই ইস্যুতে দৌড়েছি, আমাকে নিম্নলিখিত দুটি প্যাকেজ ইনস্টল করতে হয়েছিল

libssl-dev
libreadline-dev 

প্রকৃতপক্ষে আমি দেখতে পেলাম যে রুবি ২.০.০ পেতে আমাকে নীচের প্যাকেজগুলি ইনস্টল করতে হয়েছে এবং ওপেনসেল এবং রিডলাইন সহ উবুন্টু ১৩.০৪-তে সংকলন করতে 9.2 পোস্টগ্রেস করতে হয়েছিল তাই আমি ভেবেছিলাম যে আমি সেগুলি ভাগ করব

sudo apt-get -y update
sudo apt-get install -y make g++
sudo apt-get install -y curl git-core python-software-properties
sudo apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev
sudo apt-get install -y libgdbm-dev libreadline6-dev libncurses5-dev
sudo apt-get install -y libpq-dev libffi-dev

3

আমার জন্য এটি নির্ভরতা হারানোর ঘটনা ছিল।

আমি ভেবেছিলাম রুবি ইনস্টল করার জন্য আমার সমস্ত নির্ভরতা রয়েছে তবে আমিও একটি ওপেনএসএসএল এবং পঠনের ত্রুটি পাচ্ছি।

আমি রুট সুবিধাগুলি ছাড়াই আরভিএম দিয়ে রুবি ইনস্টল করার চেষ্টা করেছি যা ব্যর্থ হয়েছে তবে আমাকে হারিয়ে যাওয়া নির্ভরতার একটি তালিকা দিয়েছে। আমি তারপরে প্যাকেজ ম্যানেজারের সাথে নির্ভরতা ইনস্টল করেছি। আমি তখন থেকেই উত্স থেকে রুবি ইনস্টল করার চেষ্টা করেছি এবং সবকিছু ঠিক আছে worked

আমার জন্য নিখোঁজ নির্ভরতাগুলি হ'ল:

patch libyaml-devel autoconf gcc-c++ readline-devel libffi-devel openssl-devel automake libtool bison sqlite-devel

তবে সেগুলি আপনার পক্ষে আলাদা হতে পারে।

আপডেট: আমি এই তালিকাটি ঠিক কোথায় পেয়েছি তা মূলত আমি মনে করি না, তবে দ্রুত অনুসন্ধানে নিম্নলিখিত পৃষ্ঠাগুলিতে অনুরূপ তালিকা পাওয়া গেছে, যা আপনাকে সহায়তা করতে পারে:

https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-on-centos-6-with-rvm

http://www.itzgeek.com/how-tos/linux/ubuntu-how-tos/install-ruby-on-rails-on-centos-ubuntu-fedora-from-source.html


0

রুবি ২.০ ইনস্টল করার সময়, রবিজেমস ২.০ ইনস্টলেশনটি ওপেনসেলের কারণে ঠিকঠাকভাবে সম্পন্ন হয়নি। নিশ্চিত করুন যে আপনি ওপেনসেল কনফিগারেশন ফাইলের জন্য একটি বৈধ পথ সরবরাহ করেছেন; আপনি করতে পারেন:

find . -type f -name "openssl.cnf"

পাথটি সাধারণত $ হোম / .আরভিএম / ইউএস অথবা $ হোম / .আরভিএম / ইউএসআর / এসএসএল

তারপর

[sudo] rvm reinstall ruby-2.0.0-p0 --with-openssl-dir=[openssl.cnf path] --verify-downloads 1

রুবিজেমসের ইনস্টলেশন সফলভাবে সম্পন্ন হয়েছে তা নিশ্চিত করুন। পুনরায় ইনস্টল না করেই সেই পথটি ঠিক করার আরও ভাল উপায় হতে পারে, তবে এটি করা উচিত।


1
আমি আরভিএম বা আরবিএনভি ছাড়াই একটি ইনস্টল চেষ্টা করছি। কেবল উত্স থেকে সংকলন। অতএব। / কনফিগার, তৈরি এবং ইনস্টল পদক্ষেপগুলি করুন। ধন্যবাদ যদিও.
জ্যারেট মায়ার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.