This post comes from the first version of this blog.
Please send me an email if anything needs an update. Thanks!
Instalowałem ostatnio interpreter Rubiego i framework Rails do obsługi Redmine na serwerze. Tak się złożyło, że podczas instalacji wyskoczyło kilka błędów, które być może zmuszą Was do “podrapania się w głowę”, dlatego w dzisiejszym krótkim wpisie publikuję rozwiązanie jednego z nich.
Fotografia: Andrew*, CC-BY-SA.
Ruby: Błąd "no such file to load -- mkmf (LoadError)".
Idąc za jednym z wielu internetowych tutoriali zacząłem instalować kolejne paczki, najpierw samego Rubiego, potem narzędzie zarządzające pakietami gem, a na końcu same "klejnoty" potrzebne do działania frameworka Rails i samego Redmine'a. Konieczne było także zainstalowanie modułu Passenger do współpracy Rubiego z Apache.Kiedy wydawało się, że wszystkie polecenia zakończyły się sukcesem wyskoczył dosyć dziwny i mało czytelny błąd:
(...)
Building native extensions. This could take a while...
extconf.rb:1:in `require': no such file to load -- mkmf (LoadError)
from extconf.rb:1
Po dłuższej chwili z czeluści Internetu wygrzebałem informację o tym, że pakiet / plik mkmf jest częścią pakietu ruby1.8-dev, którego oczywiście nie miałem zainstalowanego. Szybkie polecenie:
sudo apt-get install ruby1.8-dev
oraz powtórzenie poprzednich poleceń narzędzia gem naprawiło całą sytuację, a ja mogłem cieszyć się działającym Ruby, Railsami, Passengerem i Redmine. ;]