簡體   English   中英

當 ruby​​ 2.2.1 處於活動狀態時,無法在 WSL 中的 Ubuntu 上安裝 rails 版本 4.2.5。 nokogiri 需要 Ruby 版本 >= 2.3.0

[英]Cannot install rails version 4.2.5 on Ubuntu in WSL when I have ruby 2.2.1 active. nokogiri requires Ruby version >= 2.3.0

當我安裝了 ruby​​ 2.2.1 並處於活動狀態時,嘗試在 Windows 10 上的 Linux 的 Windows 子系統中的 Ubuntu 上安裝 rails 版本 4.2.5,我收到以下錯誤:

~$ gem install rails -v 4.2.5
ERROR:  Error installing rails:
        nokogiri requires Ruby version >= 2.3.0.

我需要這些版本來協作使用這些版本的項目。

我首先在 Windows 10 上安裝WSL (1 而不是 2),然后下載並安裝了 Ubuntu Linux。 然后我安裝了rbenv ,更新了依賴項,安裝了 ruby​​ 2.5.1,這很容易。 我在安裝 ruby​​ 2.2.1 時遇到了問題,但在安裝后到了那里

$ sudo apt-get install -y libssl1.0-dev

安裝 ruby​​ 2.2.1 需要的較早版本的libssl

我安裝了node.js和早期版本的bundler使用

$ gem install bundler -v 1.17.3

作為嘗試

$ gem install bundler 

因類似錯誤而失敗。

(我還在上面安裝了 ruby​​ 2.5.1 和 rails 4.2.5,幾乎沒有問題)

嘗試各種診斷表明沒有為 ruby​​ 2.2.1 安裝導軌

~$ rails
rbenv: rails: command not found
The `rails' command exists in these Ruby versions:
  2.5.1

(但不是在 ruby​​ 2.2.1 中,這是我需要的地方)

在 Windows 文件資源管理器中查看我的文件(僅查看)我可以看到,雖然我的 ruby​​ 2.5.1 gems 包含 rails,但我的 ruby​​ 2.2.1 文件不完整並且不包含 rails。

我認為 PATH 是正確的。

$ echo $PATH returns
/home/johnloughran/.rbenv/plugins/ruby-  build/bin:/home/johnloughran/.rbenv/shims:/home/johnloughran/.rbenv/bin:/usr/ 
local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local 
/games:/mnt/c/Program 
Files/WindowsApps/CanonicalGroupLimited.Ubuntu18.04onWindows_1804.2019.522.0_ 
x64__79rhkp1fndgsc:  ........   :/snap/bin

我修改了我的.bashrc文件以將各種條目添加到上面包含的 PATH 中。

我從頭開始(卸載 Ubuntu)重復整個過程兩次,最后使用相同的塊。

我在這里嘗試並繼續的最佳選擇是什么?

感謝 Josien 的評論。 在第一種情況下,我的合作者讓這些版本的 Ruby 和 Rails 一起工作,但他們安裝它們已經有幾年了。 一個,大衛,通過在 ruby​​ 2.2.1 上嘗試全新安裝 rails 4.2.5 來幫助我,這在上面使用 nokogiri 時遇到了同樣的問題。

他通過在新的測試目錄中安裝較低版本的 nokogiri 解決了這個問題,我重復如下:

test$ gem install nokogiri -v 1.9.1

這奏效了。 然后我將導軌安裝為

test$ gem install rails --version 4.2.5

終於......它奏效了!!!! :-) 為了證明這一點,我能夠讓 rails 正確返回其版本。

test$ rails -v
Rails 4.2.5

然后我能夠創建一個應用程序

<working-directory>$ rails new learn-ruby

這幾乎有效,遇到了另一個依賴問題,但是嘿......那是編程!

關於您的第二條評論,我對這些東西的了解還不夠多,不知道這個版本的 ruby​​ 已被棄用,而 rails 版本也在那里。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM