Tôi cài đặt một gói ruby.
$ sudo gem install pdfbeads
ERROR: Error installing pdfbeads:
nokogiri requires Ruby version >= 1.9.2.
nói rằng nó cần phiên bản ruby lớn hơn 1.9.1.
Viên hồng ngọc của tôi là 1.8.7.
$ which ruby
/usr/bin/ruby
$ ruby --version
ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]
$ gem --version
1.8.15
Tôi có ruby 1.9.1 và 1.9.3.
$ whereis ruby1.9.1
ruby1.9: /usr/bin/ruby1.9.1 /usr/bin/ruby1.9.3 /usr/bin/X11/ruby1.9.1 /usr/bin/X11/ruby1.9.3
nhưng 1.9.3 được liên kết với 1.9.1.
$ ls /usr/bin/ruby* -l
lrwxrwxrwx 1 root root 22 Jul 10 02:33 /usr/bin/ruby -> /etc/alternatives/ruby
-rwxr-xr-x 1 root root 5504 Nov 26 2013 /usr/bin/ruby1.8
-rwxr-xr-x 1 root root 5552 Nov 26 2013 /usr/bin/ruby1.9.1
lrwxrwxrwx 1 root root 9 Nov 26 2013 /usr/bin/ruby1.9.3 -> ruby1.9.1
Nó nói chính nó là 1.9.3 tuy nhiên:
$ /usr/bin/ruby1.9.3 --version
ruby 1.9.3p0 (2011-10-30 revision 33570) [i686-linux]
Tôi vẫn thay đổi liên kết thành ruby1.9.3
$ ls -l /usr/bin/ruby*
lrwxrwxrwx 1 root root 9 Aug 20 21:16 /usr/bin/ruby -> ruby1.9.3
-rwxr-xr-x 1 root root 5504 Nov 26 2013 /usr/bin/ruby1.8
-rwxr-xr-x 1 root root 5552 Nov 26 2013 /usr/bin/ruby1.9.1
lrwxrwxrwx 1 root root 9 Nov 26 2013 /usr/bin/ruby1.9.3 -> ruby1.9.1
Cài đặt vẫn cho biết cần ruby> = 1.9.2
$ sudo gem install pdfbeads
ERROR: Error installing pdfbeads:
nokogiri requires Ruby version >= 1.9.2.
$ gem --version
1.8.15
$ ruby --version
ruby 1.9.3p0 (2011-10-30 revision 33570) [i686-linux]
Tôi có ruby1.9.3 hay chỉ ruby1.9.1?
Làm thế nào tôi có thể sudo gem install pdfbeads
sử dụng ruby 1.9.3?
Cập nhật:
Bây giờ tôi đã làm theo cách cài đặt ruby 2.1.0 bằng RVM, tôi đã thêm đường dẫn của rvm
tôi PATH
. Sau đó tôi đã cài đặt thành công ruby2.1.0
$ rvm install 2.1.0
và làm cho nó mặc định
$ rvm use 2.1.0
$ ruby -v
ruby 2.1.0p0 (2013-12-25 revision 44422) [i686-linux]
$ which ruby
/home/tim/.rvm/rubies/ruby-2.1.0/bin/ruby
Bây giờ quay lại để cài đặt gói pdfbeads
, nhưng không có sudo
(vì tôi nghĩ rằng tôi đã cài đặt ruby 2.1.0 trong tài khoản của mình, không phải root và cài đặt gói yêu cầu phiên bản ruby mới hơn)
$ gem install pdfbeads
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /var/lib/gems/1.8 directory.
Vì vậy, tôi nghĩ rằng tôi phải sử dụng sudo
. Nhưng tôi vẫn nhận được lỗi ban đầu,
$ sudo gem install pdfbeads
ERROR: Error installing pdfbeads:
nokogiri requires Ruby version >= 1.9.2.
Tôi nghĩ rằng đó là bởi vì bên dưới sudo
, người dùng root
vẫn có phiên bản cũ hơn ruby1.8.7 như mặc định. Vì vậy, tôi tự hỏi tôi có thể làm gì bây giờ?
rvm
là trong $PATH
. Tôi không chắc ý của bạn là "root's PATH
". có khác PATH
không
PATH
khi bạn root.
PATH=$PATH:/home/tim/.rvm/bin
? Tôi sẽ phải chuyển trở lại tài khoản của mình và cài đặt pdfbeads
.
rvm
đường dẫn trong rootPATH
?