Navigation überspringen

Ruby on Rails unter Mac OS X installieren

28.5.2007·Kommentare:  13

Vor kurzem hatte ich mich endlich überwunden und die Erstausgabe von »Agile Web Development with Rails« aus meinem Regal gekramt. Nachdem ich Sie vom Staub befreit hatte, stieß ich bei der Installation von Ruby on Rails auf das erste Problem: Die beschriebene Installationsmethode hatte sich inzwischen (also für Mac OS 10.4.9) geändert.

Also habe ich mir zur Sicherheit die zweite Ausgabe besorgt und bin, wie darin beschrieben, den Anweisungen Duncan Davidsons gefolgt.

Update: Viel einfacher ist es, wenn man Locomotive installiert. Dabei handelt es sich um ein mit XAMPP oder MAMP vergleichbares Tool, dass die Entwicklungsumgebung für Ruby on Rails einrichtet und verwaltet. Da hab ich wohl den Wald vor lauter Bäumen nicht gesehen. Wer sich trotzdem für die Hardcore-Variante entscheidet findet im Folgenden Hinweise zur Anleitung von Duncan Davidson.

Der Prozess ist eigentlich ziemlich »straight forward«. Für Leute wie mich, die erst vor kurzem von Windows auf Mac umgestiegen und im Terminal noch nicht so sattelfest sind, hier ein paar Anmerkungen zu oben verlinkter Methode:

.bash_profile

Duncan schreibt ganz locker, dass man die Zeile

export PATH=/opt/local/bin:/opt/local/sbin:/opt/local/apache2/bin:$PATH

in ~/.bash_profile eintragen soll. Hier steht man als Laie erstmal an: Was macht die Datei und wo befindet sie sich? Aber eigentlich ist es ganz einfach: Terminal öffnen und »emacs .bash_profile« eintippen. Normalerweise existiert diese Datei, die mit autoexec.bat in Windows vergleichbar ist, noch nicht. Daraufhin öffnet sich im Terminal der Emacs-Editor. Anschließend fügt man die Zeile ein und drückt CTRL+X und dann CTRL+S. Die Tastenkombination speichert die Datei, mit CTRL+X und CTRL+C beendet man Emacs.

Danach kann man nahtlos (und ja, ohne Neustart) mit Schritt 3 weitermachen.

Dauer

Duncan schreibt, dass man die Installationen in Schritt 4 in einem Cafe machen soll, da sie etwas dauern. In der Tat verbringt man ungefähr zwei Stunden vorm Rechner, bis man alle Befehle ausgeführt hat und alle Dinge am richtigen Ort sind.

Apache benötigt ungefähr 30 Minuten, MySQL ebenso. Die Subversion-Installation dauert 15, Ruby und Rubygems jeweils 10 Minuten. Die Rest ist dann nur mehr eine Sache von Sekunden. Die Anleitungen zum Starten von Apache und MySQL, die nach deren Installation ausgegeben werden, kann man vorerst vernachlässigen. Duncans Artikel geht nachher noch darauf ein.

Gems

Problem mit Rake

Bei Schritt 5 hatte ich ein Problem mit Rake. Der Befehl »$ sudo gem install -y rake« brachte bei mir folgende Fehlermeldung:

ERROR: While executing gem ... (Gem::GemNotFoundException)
Could not find rake (> 0) in any repository

In den Kommentaren wird dies ebenfalls angesprochen und auf eine Diskussion in den Google Groups verlinkt. Man muss lediglich den anscheinend beschädigten Source-Cache der Gems löschen:

rm /usr/local/lib/ruby/gems/1.8/source_cache

Bei mir spuckte Terminal zwar die Fehlermeldung »No such file or directory« aus, danach funktionierte die Installation von Rake aber problemlos. Möglicherweise war nur der Server kurz nicht erreichbar.

Mongrel

Bei der Installation des Webservers Mongrel sollte man sich von den Auswahldialogen nicht verwirren lassen. Einfach immer die Option mit der aktuellsten Versionsnummer mit »(ruby)« im Anhang auswählen.

Hello from Rails!

Ab dann klappte, wie im Buch beschrieben, alles reibungslos – bis hin zur ersten »Applikation«, die »Hello from Rails!« ausgibt.


Schlagwörter

· · ·


13 Kommentare

#1 von Dominik am 29.5.2007, 9:52 Uhr

Locomotive
http://locomotive.raaum.org/

#2 von Benedikt am 29.5.2007, 10:52 Uhr

Ah! Danke, Dominik. Locomotive wird sogar im Buch beschrieben, allerdings dachte ich, dass man damit nur Projekte verwalten kann. Macht natürlich vieles einfacher.

Btw: Wusste gar nicht, dass du dich auch mit Rails beschäftigst. Kann man schon Projekte begutachten?

#3 von Pietropizzi am 29.5.2007, 22:22 Uhr

Gratulation zum Durchringen zu Rails! BoR - Ben on Rails, find ich spitze 😉

#4 von Benedikt am 30.5.2007, 11:05 Uhr

Danke. Ich muss sagen, der Anfang war leichter als ich gedacht hab – vor allem mit dem richtigen Buch. Und es ist schon ein Wahnsinn; klar, wir haben alle drüber gelesen wie einfach dieses und jenes mit Ruby on Rails klappen soll, aber wenn man’s erst mal selber ausprobiert – echt super! Hat mich daran erinnert, wie ich vor ein paar Jahren zum ersten Mal den Quelltext einer standardkonformen Website gesehen hab’ und mir gedacht hab: Und das alles mit ein paar Divs und Paragraphs!?

#5 von Dominik am 30.5.2007, 21:23 Uhr

Nein, ich habe nur ein paar Testläufe damit gemacht und bisher kein (für mich) passendes Einsatzgebiet gefunden.

RoR ist aber wirklich ein tolles Teil, und ich habe so ein Gefühl das mir sagt dass das für dich ein echtes Powertool ist – mir hat (bisher) etwas die technische Anbindung gefehlt, das wird aber immer besser…

#6 von ernst am 31.5.2007, 14:43 Uhr

Gut, dass du dir mal Rails angesehen hast! Hast schon Ideen für Projekte? Wir könnten ja auch gemeinsam was basteln 😉
Übrigens würd ich sehr stark zur zweiten Auflage des Buches raten, weil sich doch einige Dinge geändert haben (in Bezug auf wie man Sachen am besten macht).

#7 von Benedikt am 31.5.2007, 15:33 Uhr

Dominik, stimmt, Ruby on Rails ist eben speziell für reine Webanwendungen zugeschnitten. Obwohl: Slingshot. Ich überblick das Ganze noch nicht wirklich, aber ich glaub ich versteh, was du meinst.

Ernst, ja, Ideen hab ich schon – die kommen quasi von allein, sobald man das Potenzial von Ruby on Rails auch nur ansatzweise begreifen lernt. Möcht mich logischerweise erstmal durchs Buch arbeiten, um sattelfest zu werden. Bin für gemeinschaftliche Projekte aller Art offen!

Zur Buchauflage: Ich hab mir genau aus dem Grund die zweite Auflage besorgt. Gerade bei so jungen Projekten ändert sich gerade am Anfang ziemlich viel. Und bei Ruby on Rails liegt es wohl in der Natur der Sache. 😉

#8 von Dominik am 31.5.2007, 21:29 Uhr

Du machst das schon 😎

#9 von robert am 2.8.2007, 21:18 Uhr

wollte nur bemerken, dass ich ewigkeiten bei

sudo gem install rails –include-dependencies

festhing, wegen

ERROR: While executing gem … (Gem::RemoteSourceException)

bei mir lag es an der firewall. nachdem ich sie ausgeschaltet hatte und natuerlich die falsche cache datei geloescht hatte, funktionierte es.

#10 von Benedikt am 3.8.2007, 22:21 Uhr

Danke für den Hinweis, Robert. Hast du schon mal Locomotive ausprobiert? Kann ich nur empfehlen, funktioniert anstandslos und erfordert Null Installationsaufwand.

#11 von thomas am 10.8.2007, 10:43 Uhr

das ist sehr verwirrend und hilft überhaupt nicht, weil du dich auf irgendein buch beziehst, obwohl du schreibst, man könne deiner anleitung folgen. das ist schlichtweg falsch und irreführend.

#12 von Benedikt am 10.8.2007, 11:13 Uhr

Thomas, was ist falsch oder irreführend? Der Titel des Artikels ist »Ruby on Rails unter Mac OS X installieren« und ich verlinke zur Anleitung – im Web durchaus gängige Praxis. Zudem gebe ich Hilfestellungen und weise in einem Update auch auf eine einfachere Alternative (Locomotive) hin. Und für all das ist das erwähnte Buch überhaupt nicht notwendig. Ich versteh das Problem nicht. Wenn du über Google eine Anleitung zur Installation von Ruby on Rails gesucht hast, findest du hier genau die richtigen Infos.

Und:

obwohl du schreibst, man könne deiner anleitung folgen

Das habe ich nie geschrieben. Ich erwähne lediglich die Anleitung von Duncan Davidson und gebe Hinweise zu einigen seiner Punkte.

#13 von sudo am 13.12.2007, 1:43 Uhr

Hab mir Locomotive »installiert«, ist ja wirklich easy, einfach in den Applications Ordner rüberziehen. Musste zu meiner Enttäuschung aber feststellen, dass da rubygems fehlt, und mysql auch.

mac:~/development root$ ./script/generate
./script/../config/boot.rb:18:in `require’: No such file to load – rubygems (LoadError)
from ./script/../config/boot.rb:18
from ./script/generate:2:in `require’
from ./script/generate:2

Also doch wieder Handarbeit … naja … aber ansonsten scheint Locomotive ganz nett zu sein … aber erstmal alles zum laufen bekommen, geht ja nix …


Kommentieren

Dieser Eintrag kann nicht mehr kommentiert werden.