14.09.2008

ruby und osx leopard

heute hatte ich viel spass mit der installation von ruby auf meinem mac. ich dachte mir, dass es vielleicht eine gute idee wäre die ruby version zu aktualisieren, da die vorinstallierte version auf leopard doch schon etwas veraltet ist. im gegensatz zu os x tiger ist sie immerhin funktionstüchtig!
da ich das ganze für tiger schon mal hintermich gebracht hab, war mir klar, dass nicht alles sofort klappt, da man die ganze geschichte aus den quellen selbst bauen muss.

zunächst habe ich versucht die ruby installation über macports zu machen, wie es in der anleitung von carl mercier beschrieben ist.
allerdings hatte ich damit nicht besonders viel glück, warscheinlich, weil schon irgendeine andere version von ruby probleme gemacht hat, vielleicht lag es auch an den komischen dingen, die ich für die gimp-installation machen musste. leider konnten mir auch die vielen kommentare zum blogeintrag nicht weiter helfen...

deshalb habe ich als grundlage für meine versuche die anleitung von hivelogic verlassen, die auch von der offiziellen ruby-seite empfohlen wird. die anleitung ist klar strukturiert und bietet auch gleich alle kommandos zum einfachen kopieren ins terminal an.
allerdings hatte ich gleich beim ersten schritt ein problem, da mein gcc compiler nicht richtig konfiguriert war. deshalb musste ich nochmal das xcode paket von apple herunterladen und mehrfach neu installieren. mit dem gcc-compiler 4.0.1 gings dann endlich:

Macintosh:src peterschroder$ gcc --version
i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5488)

danach verlief die installation dank der ausführlichen anleitung reibungslos.

das nächste problem kam dann erst beim ausführen von ruby, da man für die neu installierte version die $PATH variable erweitern musste. dies habe ich durch einen export befehl in der ~/.bash_login datei gemacht:

export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH"

was aber keinerlei wirkung hatte, anscheinend wird diese datei in leopard nicht beim start des terminals ausgeführt?! ich habe es dann an die ~/.bash_profile angehängt, was auch die erwünschte wirkung hatte.

ruby lief nun ordentlich:

Macintosh:src peterschroder$ ruby --version
ruby 1.8.6 (2007-06-07 patchlevel 36) [i686-darwin9.4.0]

allerdings konnte ich die dynamische ruby-shell irb nicht mehr öffnen:

Macintosh:readline-5.2 peterschroder$ irb
dyld: NSLinkModule() error
dyld: Symbol not found: _rl_filename_completion_function
Referenced from: /usr/local/lib/ruby/site_ruby/1.8/i686-darwin9.4.0/readline.bundle
Expected in: flat namespace

Trace/BPT trap

nach einigem googlen konnte ich dann herausfinden, dass man dieses problem durch eine erneute installation von readline und dem readline.bundle beheben kann.

nun ist es endlich vollbracht! wat nen scheiß! ich hasse ruby für mac!

Keine Kommentare: