Frage Kompass kann nach der Installation nicht ausgeführt werden


Dies ist ein Anfängerfehler, da bin ich sicher, da ich neu im Terminal bin. Ich versuche zu bekommen Kompass Ich arbeite bereits auf meinem Mac, ich habe bereits Sass installiert und es funktionierte, aber wenn ich versuche, Kompass zu installieren, obwohl es funktioniert, kann ich es nicht ausführen ...

computer-name:~ me$ sudo gem install compass
Password:
Successfully installed compass-0.12.2
Parsing documentation for compass-0.12.2
1 gem installed
computer-name:~ me$ compass -v
-bash: compass: command not found
computer-name:~ me$ sass -v
Sass 3.2.12 (Media Mark)

Eingabe:

gem list

Gibt auch zurück:

compass (0.12.2)

Einige Dinge, die ich dachte, waren vielleicht, dass ich einen Konflikt habe, den ich ursprünglich ohne zu installieren versuchte sudo und es hat geklappt, ich habe es nochmal versucht sudo aber es hat immer noch nicht funktioniert.

Mein $ PATH hat:

computer-name:~ me$ echo $PATH
/usr/local/bin:/usr/local/sbin:~/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Users/me/.rvm/bin

Der letzte .rvm / bin scheint Rubin zu sein, enthält aber keinen Kompass (obwohl es auch keinen Sass gibt ...)

Ich habe Kompass gefunden usr/local/Cellar/ruby/2.0.0-p247/bin/ Aber wenn ich mir Tutorials anschaue, scheint es, dass es einfach laufen sollte. Ich gehe davon aus, dass ich etwas getan habe, um die normale Funktionalität zu zerstören, und ich würde gerne wissen, wie man das testet oder repariert.

Hinweis: Sass ist im selben Ordner und sass -v Zeigt die Version an, also nehme ich an, dass es im Pfad einige ist (vielleicht findet Ruby es ...)


2
2017-10-21 06:14


Ursprung


Vielleicht ist Kompass nicht im Standard "Pfad", den Sie einfach über die Befehlszeile aufrufen können? Sie müssen möglicherweise eine symbolische Verbindung zu Kompass über den Pfad erstellen oder einen Kompasspfad in den Systempfad einfügen, damit Sie von einer beliebigen Stelle im System aus "Kompass" aufrufen können. - Darius
Ich habe den Pfad ein wenig angeschaut, wie würde ich Kompass finden und ihn dem Pfad hinzufügen? Ich werde meine Frage aktualisieren, um meinen Pfad einzuschließen. - Totoro
Hast du deine Shell bereits neu gestartet? - slhck
@slhck hatte ich nicht ... aber ich tat es einfach und es funktioniert immer noch nicht - Totoro
@darius auch wenn Sie den Link zum Installieren von Kompass betrachten, scheint es nach der Installation zu sein, ich sollte in der Lage sein, Kompass zu erstellen <Projektname> und es sollte funktionieren, aber es hat nicht funktioniert. Deshalb denke ich, dass ich etwas in meiner Umgebung getan habe ... - Totoro


Antworten:


Hier ist eine sehr wichtige Sache über das Ausführen von zwei oder mehr Versionen von Ruby unter OS X: Wenn Sie verwenden sudo gem, verwenden Sie Ihren OS X Standard gem von /usr/bin/gem. Das ist nicht was du willst.

Wenn du benutzt gem allein (ohne sudo), sollten Sie normalerweise neu installiert verwenden gem (z. B. die aus dem Installationsprogramm von Ruby OS X oder die aus RVM, rbenv, welche Methode auch immer Sie zum Ausführen einer anderen Ruby-Version verwendet haben). Bestätigen Sie dies durch Ausführen which -a gem. Es sollte etwas zurückgeben wie:

/Users/your-username/.rvm/bin/gem
/usr/bin/gem

Wenn du neu bist gem von RVM ist nicht die Standardeinstellung (d. h. die erste in dieser Liste), Ihre RVM-Installation ist unterbrochen. Sonst kein Anruf an gem, auch ohne sudo, wird immer noch die verwenden /usr/bin/gem und scheitern anschließend aufgrund unzureichender Berechtigungen.

Stellen Sie also sicher, dass alle Anrufe an ruby und gem sind die RVM-Versionen und nicht die Systemversionen. Und noch nie benutzen sudo wieder etwas zu installieren, weil es in Ihrem Standard OS X Ruby landen wird.

Überprüfen Sie für RVM speziell, dass es stammt nach Alle Ihre PATH-Manipulationen werden in der Konfigurationsdatei der Shell vorgenommen .profile oder .bash_profile auf OS X, nicht sicher, welche RVM ändert).


3
2017-10-21 06:58



Danke für die Antwort, watch ist zurückgekommen /usr/local/bin/gem /usr/bin/gem /usr/local/bin/gem (Ich denke, das letzte ist ein wenig überflüssig ..) Das erste in lokalen ist ein Link zu /usr/local/Cellar/ruby/2.0.0-p247/bin/gem also sollte es funktionieren (und es erscheint in Ruby ohne Sudo, es funktioniert einfach nicht alleine. - Totoro
Ich fügte eine Antwort mit mehr Details hinzu, wählte aber deine, da du einen guten Rat gabst, ich denke, ich muss meine Festplatte löschen und neu anfangen :) - Totoro
Ich verstehe das Nein sudo aber weit gefehlt - das SASS-Projekt sagt, es zu benutzen, und das ist ein ziemlich offizieller Ausgangspunkt für viele Menschen: sass-lang.com/install - danjah


Ich hatte ein ähnliches Problem und habe das gefunden gem list compass -d erlaubte mir, Kompass zu finden und zu symbolisieren.


3
2018-05-21 18:09





Ich habe das Gleiche erlebt. Dies ist, was ich getan habe, um den Kompass-Befehl zum Laufen zu bringen: Ich habe einen symbolischen Link hinzugefügt (ich habe .12.6, ändere es zu deinem .12.2):

ln -s /usr/local/lib/ruby/gems/2.0.0/gems/compass-0.12.2/bin/compass /usr/local/bin/compass

2
2018-06-22 12:44





Ich glaube nicht, dass das wirklich eine Antwort auf meine Frage ist, aber im Moment funktioniert es ... Ich habe Kompass in meinem System gefunden /usr/local/Cellar/ruby/2.0.0-p247/lib/ruby/gems/2.0.0/gems/compass-0.12.2/bin/ also habe ich das hinzugefügt ~/.bash_profile am Anfang von export PATH="<here>:/usr/local/bin:other paths" Jetzt kann ich die Funktion ausführen, aber ich weiß immer noch nicht, wie ich das System diagnostizieren und die Ursache des Problems finden oder beheben kann. Es fühlt sich an wie ein Hack.

Ich habe ein paar nützliche Informationen von hier (stackoverflow), hier (apple.stackoverflow) und Die Ruby-Rvm-Hilfeseite


1
2017-10-22 18:32