Não é possível executar a bússola após a instalação

2

Este é um erro de principiante, estou certo de que sou novo no terminal, etc. Eu estou tentando obter bússola trabalhando no meu mac, eu já instalei o sass e comecei a funcionar, mas quando tento instalar o compasso mesmo que funcione não consigo executá-lo ...

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)

Entrando:

gem list

Também retorna:

compass (0.12.2)

Algumas coisas que eu estava pensando eram talvez eu tenha um conflito, eu originalmente tentei instalar sem sudo e deu certo, eu tentei novamente com sudo mas ele ainda não funcionou.

Meu $ PATH tem:

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

O último .rvm / bin parece ser rubi mas não contém bússola (embora o sass também não esteja lá ...)

Eu encontrei a bússola em usr/local/Cellar/ruby/2.0.0-p247/bin/ , mas olhando para os tutoriais parece que ela deve apenas ser executada, estou assumindo que fiz algo para quebrar a funcionalidade normal e gostaria de saber como testar isso ou corrigi-lo. / p>

Nota: sass está na mesma pasta e sass -v mostra a versão, então eu suponho que ela esteja no caminho de alguma forma (talvez Ruby a encontre ...)

    
por Totoro 21.10.2013 / 08:14

4 respostas

3

Aqui está uma coisa muito importante sobre a execução de duas ou mais versões do Ruby no OS X: Se você usar sudo gem , você usará o padrão do OS X gem de /usr/bin/gem . Não é isso que você quer.

Se você usa gem sozinho (sem sudo ), normalmente deve usar o recém-instalado gem (por exemplo, o do instalador do Ruby OS X ou o do RVM, rbenv, qualquer método usado para obter outra versão do Ruby em execução). Confirme isso executando which -a gem . Deve retornar algo como:

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

Se o novo gem do RVM não for o padrão (ou seja, o primeiro da lista), a instalação do RVM será interrompida. Caso contrário, qualquer chamada para gem , mesmo sem sudo , ainda usará o /usr/bin/gem e falhará subsequentemente devido a permissões insuficientes.

Portanto, certifique-se de que todas as chamadas para ruby e gem sejam as versões do RVM, e não as do sistema. E nunca use sudo novamente para instalar algo, porque ele vai parar no seu OS X Ruby padrão.

Para o RVM especificamente, verifique se ele é originado após todas as suas manipulações PATH são feitas no arquivo de configuração do shell (geralmente .profile ou .bash_profile no OS X, não tenho certeza qual RVM modifica ).

    
por 21.10.2013 / 08:58
3

Eu tive um problema semelhante e descobri que gem list compass -d me permitiu encontrar e simbolizar a bússola.

    
por 21.05.2015 / 20:09
2

Eu experimentei a mesma coisa. Isto é o que eu fiz para fazer o comando da bússola funcionar: Eu adicionei um link simbólico (eu o tenho mudado para o seu .12.2):

ln -s /usr/local/lib/ruby/gems/2.0.0/gems/compass-0.12.2/bin/compass /usr/local/bin/compass
    
por 22.06.2014 / 14:44
1

Eu não sinto que isso seja realmente uma resposta para a minha pergunta, mas no momento em que funciona ... Eu encontrei bússola no meu sistema em /usr/local/Cellar/ruby/2.0.0-p247/lib/ruby/gems/2.0.0/gems/compass-0.12.2/bin/ , então eu adicionei isso a ~/.bash_profile no começo de export PATH="<here>:/usr/local/bin:other paths" então agora eu posso executar a função, mas eu ainda não sei como diagnosticar o sistema e encontrar a causa do problema ou consertá-lo para que pareça um hack.

Eu tenho algumas informações úteis do aqui (stackoverflow) , aqui (apple.stackoverflow) e o site de ajuda do ruby rvm

    
por 22.10.2013 / 20:32