2016-11-02 94 views
1

我正在嘗試使用bundle install。我不是Ruby用戶 - 這是我第一次真正嘗試運行耙子。我只是試圖從ThrowtheSwitch.org使用一些使用Rake等的軟件包。如何以正常用戶身份運行軟件包安裝

我最初安裝紅寶石數天前用:

sudo apt-get install ruby-full 

這讓我用用統一測試框架耙。現在我想使用CMock。使用CMock指示說cd進入的目錄,然後

$ bundle install 
$ bundle exec rake 

所以我安裝使用捆綁:

$ sudo apt-get install bundler 

但隨後運行bundle install不斷地問我要我的密碼。所以我嘗試:

$ gem install bundler 

無法在/var/lib/gems/1.9.1上寫入權限。所以我嘗試:

$ sudo gem install bundler 

哪個安裝好,所以我再試一次bundle install。但仍然不斷要求我的密碼。所以我嘗試:

$ sudo bundle install 

而得到,我不應該運行捆綁爲根警告:

不要運行捆紮機爲根。 Bundler可以詢問sudo是否需要,並且以root用戶身份安裝捆綁軟件將爲該機器上的所有非root用戶中斷該應用程序。

我該如何正確安裝,以便按預期運行?

注:我已經看到關於這個主題還有其他幾個問題,其中沒有一個我理解答案,所以讓我強調我不是一個紅寶石(甚至是web堆棧)的開發人員 - 我需要這個在外行的條款儘可能多。

另請注意:我看到了幾個提到的RVM和rbenv。我不確定這些問題是否與這些問題有關,或者是否需要其中一項或兩項。我現在也沒有。我們即將研究他們現在的情況。

請注意第三種:我的平臺是WSL(所以Ubuntu是那種)。

+0

另外,'apt-get install bundler'和'gem install bundler'之間有區別嗎? – Toby

回答

1

我幾個星期以來一直在使用Ruby。我會說,我知道你在哪裏。我不會幫助太多,但會對你評論中的最後一個問題說,我的理解是這兩個命令是不同的。

我對一個簡短答案的理解..可以有他們需要使用的Ruby的差異版本(遺留項目等),並不是每個版本的Ruby都可以運行給定gem的每個版本。出於這個原因,可以使用rbenv或rvm來幫助管理使用特定版本的ruby設置項目的藝術,然後安裝所需的gem。

我一直在使用我的Mac上的rvm和linux的rbenv,並發現它們都足夠類似於我一直在做的簡單的事情。在Linux上安裝rbenv證明稍微容易一些。一旦設置正確,sudo不再需要安裝寶石 - 這是首選。我會建議嘗試其中之一併按照他們的網站指示進行安裝。一旦建立起來,事情應該會更順暢。

+0

感謝您的信息。結合veldtmana的回答,這幫助我更多地瞭解了一些事情。我在WSL中與rbenv一起工作,其工作比我放棄嘗試使用RVM更容易! – Toby

1

嘗試運行:

gem install bundler 
bundle install 

我會盡量解釋紅寶石生態系統是如何工作的:

捆紮機的瑰寶 - 模塊 - 這是安裝在Ruby之上。寶石安裝使用

gem install <gem name> 

我會建議你在做任何事情之前安裝一個紅寶石版本管理器。兩個主要候選人是RVM和rbenv。

我發現RVM對於初學者來說是更簡單的選擇,但它在硬盤上佔用了更多的空間。

您已經通過命令行調用ruby -v安裝了Ruby,你可以測試它是否已正確安裝後。

之後,你可以,如果你使用的是rbenv您可能需要運行老調重彈致電gem install bundler

一旦創業板安裝,你應該能夠運行捆綁安裝捆綁,但是第一

我希望解釋是有道理的 - 如果你有問題,請大聲喊叫。

+0

謝謝。我首先嚐試了RVM,但是它的複雜性讓我望而卻步,並且我無法正常工作(我認爲我之前安裝的root用戶安裝的vbundler仍然在使用),所以我卸載了所有的東西(包括過去的ruby install&bundler),然後用rbenv進行了安裝。除了確保我使用'.bashrc',安裝指南中提到'.bash_profile',這就像夢一樣。 (我還在'.bashrc中添加了'rbenv local 2.3.1',這樣當我打開bash時,ruby就已經被選中了)。 – Toby

相關問題