web-dev-qa-db-fra.com

Impossible d'utiliser la boussole après l'avoir installée

Je ne semble pas être en mesure de faire fonctionner la boussole sur Vagrant en utilisant ce Vagrantfile . Voir le reste du script bash utilisé à droite ici(repo supprimé) (voir Vaprobash si vous voulez provisionner votre Vagrant Ubuntu Box!).

Je suivais donc un cours de gruntjs, quand j'ai dû utiliser grunt server. Le seul problème est qu'il a besoin d'une version plus récente Ruby (1.9+ je crois au lieu du 1.8) et qu'il a besoin d'une boussole. J'ai donc résolu le Ruby en installant RVM et en installant la dernière version stable. La boussole devrait être facile à obtenir gem install compass et il semble être installé. Mais quand je tape compass -v J'obtiens l'erreur de jachère:

/home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- sass/script/node (LoadError)
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches/browser_support.rb:1:in `<top (required)>'
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:2:in `block in <top (required)>'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:1:in `each'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:1:in `<top (required)>'
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/lib/compass/sass_extensions.rb:9:in `<top (required)>'
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/lib/compass.rb:5:in `block in <top (required)>'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/lib/compass.rb:4:in `each'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/lib/compass.rb:4:in `<top (required)>'
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/rubies/Ruby-2.1.0/lib/Ruby/site_Ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/bin/compass:20:in `block in <top (required)>'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/bin/compass:8:in `fallback_load_path'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/gems/compass-0.12.2/bin/compass:19:in `<top (required)>'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/bin/compass:23:in `load'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/bin/compass:23:in `<main>'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/bin/Ruby_executable_hooks:15:in `eval'
    from /home/vagrant/.rvm/gems/Ruby-2.1.0/bin/Ruby_executable_hooks:15:in `<main>'

Je ne suis donc pas sûr de ce qui ne va pas, sauf pour l'erreur me disant qu'il manque des fichiers. Quelqu'un a-t-il eu des indices sur ce qui pourrait être le problème?

.bash_profile contient les informations sur le chemin:

[[ -s "$HOME/.profile" ]] && source "$HOME/.profile" # Load the default .profile

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a Shell session *as a function*

rvm -v et Ruby -v fonctionne très bien et après l'installation de gem install compasssass -v semble également fonctionner.

Vous pouvez tout répliquer à l'aide de Vagrant et VirtualBox. Téléchargez simplement le Vagrantfile depuis mon github mentionné ci-dessus et vagrant up.

28
Ilyes512

J'ai demandé de l'aide sur la page du problème officiel de la boussole Github et j'ai obtenu la réponse à ce problème.

Le problème avec GitHub est juste ici .

Comment régler ceci:

Lors de l'installation de la boussole (v0.12.2), il téléchargera la dernière version de sass v3.3.0.rc3 (car c'est une dépendance), mais la boussole ne fonctionnera pas avec la dernière version de sass. Vous pouvez soit mettre à niveau la boussole vers la dernière version alpha (0.13. *) Soit rétrograder sass à 3.2. *. Je choisis le dernier:

gem uninstall sass --version 3.3.0.rc.3
gem install sass --version 3.2.18
compass -v # Working :)

Assurez-vous d'utiliser la version que vous avez installée. Découvrez-le en tapant ceci:

sass --version
85
Ilyes512

jetez un oeil à cette réponse https://stackoverflow.com/a/21082978/497756 - c'était pour un autre problème mais devrait résoudre le vôtre aussi.

1
mpapis