Question

Dans la documentation d'installation de RoR, il est indiqué qu'il existe de nombreuses limitations à l'exécution de Ruby on Rails sous Windows et que, dans certains cas, des bibliothèques entières ne fonctionnent pas.

Quelles sont ces limitations, devrais-je toujours utiliser Linux par défaut pour coder / exécuter RoR, et Iron Ruby devrait-il corriger ces limitations ou est-il essentiel pour le système d'exploitation lui-même?

ÉDITER Merci pour votre réponse concernant l'installation et l'exécution sous Linux, mais j'essaie vraiment de comprendre les limitations de fonctionnalités mentionnées dans la documentation d'installation. Bibliothèques de travail - J'essaie de trouver un lien vers le commentaire, mais il a été référencé dans une installation, lisez-moi quand j'ai installé le paquetage msi, je pense

EDIT Merci pour les références à IronRuby ces derniers temps, c’est certainement un projet à surveiller, et comme il est, bien entendu, un langage .NET, il sera inestimable s’il tient ses promesses. Cependant, dans mon cas, j’ai fini par mordre la balle et installer un serveur Ubuntu.

< polarisation > J'aurais dû le faire il y a des années & Lt; / partial & Gt;

Était-ce utile?

La solution

Voici un aperçu des problèmes actuels liés à Rails sous Windows:

  • Ruby et Rails sont plus lents sous Windows que sur les systèmes d'exploitation de type Unix.
  • Quelques gemmes et bibliothèques ne fonctionnent pas sous Windows.
  • Certains Unix-isms ne sont pas disponibles sous Windows ( exemples ).
  • La communauté est principalement sur Mac ou Linux ( Ceci est particulièrement difficile à gérer; personne ne veut être seul sur une île lorsque les autres membres de la tribu font la fête, s'amusent et s'entendent très bien. La communauté est importante. Il semble que la plupart des développeurs Windows qui commencent par Rails basculent rapidement vers un Mac ou Linux. Toutefois, , la petite communauté d'utilisateurs de Windows Ruby persistante est extrêmement sympathique, dédié et compétent - allez dire bonjour . ) / li>

Notez que la plupart des conseils qui suivent sont maintenant obsolètes en raison des efforts magnifiques de l'équipe RubyInstaller . stabilité, compatibilité et performance à Ruby sous Windows. Je n'ai plus besoin d'utiliser VirtualBox, ce qui en dit long sur le chemin parcouru depuis Ruby sous Windows.

Si vous souhaitez plus de détails techniques, voici ce que vous devez lire. :

La citation de choix de ce dernier est:

  

AkitaOnRails: La chose la plus évidente est que toute Gem avec des extensions C sans fichiers binaires appropriés pour Windows échouera. Essayer d'exécuter des commandes shell échouera ainsi que RubyInline. Quoi d'autre?

     

Luis Lavena: Hehe, ce n'est que la partie visible de l'iceberg

Cela dit, je ne trouve pas que le développement avec Rails sous Windows trop soit pénible. Utiliser Ruby est, pour la plupart, un plaisir. J'éviterais InstantRails car, pour être franc, il est tout aussi facile d'installer Ruby correctement en utilisant le programme d'installation en un clic, puis en effectuant une gem install rails. Si vous avez besoin d’Apache et de MySQL, WAMP est un bon choix, bien que cela ne soit pas nécessaire si vous vous en tenez à Mongrel et SQLite.

Ce que j’ai commencé à faire récemment est d’exécuter VirtualBox avec une instance du serveur Ubuntu qui reflète de près le serveur de déploiement. Je mappe un lecteur réseau sur le serveur Ubuntu, puis je modifie et exécute mon code directement sur la machine virtuelle. Il n’utilise pratiquement pas de mémoire (il utilise actuellement environ 43 Mo; contrairement à Firefox, qui utilise environ 230 Mo), Rails fonctionne mieux que de l’exécuter en mode natif sous Windows. De plus, vous pouvez expérimenter avec votre serveur virtuel en toute sécurité. C'est une très belle configuration, je le recommande vivement.

Enfin, voici quelques blogs Ruby / Rails destinés aux utilisateurs Windows:

Autres conseils

J'ai découvert comment mettre en place un environnement de développement avec Instant Rails sous Windows était vraiment simple. Surtout lorsque vous utilisez Netbeans ou Radrails comme IDE.

Moins de 10 minutes de travail.

Qu'est-ce que ceux qui ont eu du mal à trouver ont été le problème?

Personne n'a encore mentionné Bitnami RubyStack ? Je l'utilise depuis des années avec RadRails. Inclut Apache, MySQL / Postgre, phpmyadmin, git, etc. Facultatif Ruby 1.9.2 / Rails 3.0b. Vous pouvez également exécuter la version Ubuntu de RubyStack dans une machine virtuelle, mais je ne l’ai pas encore essayé.

Je développe Rails sur un PC Windows depuis quelques années et je n’ai eu aucun problème d’installation lors de mes débuts. Cependant, j'ai récemment reconstruit ma machine et j'ai eu du mal à faire fonctionner le programme d'installation de One-Click Ruby et la dernière version de Gems. C'est donc ce que j'ai essayé.

Option 1: Exécuter une machine virtuelle Linux

J'ai été vraiment impressionné par l'idée de Charles Roper de faire fonctionner Rails sur une machine virtuelle Linux, et c'est la voie que j'ai initialement choisie. Tout s'est très bien passé et je l'ai documenté à l'adresse budanters.blogspot.com . Cependant, je ne parviens pas à accéder au serveur MySQL (sous Linux Virtual Machine) à partir de l'hôte Windows.

Option 2: utilisez jRuby

J'ai récemment installé la version Windows de NetBeans 6.5 , sans être présent dans Ruby. conscient de cela, cela installe JRuby et les gemmes Rails. L’IDE a une interface utilisateur pour installer Gems, et mon ancienne application est maintenant de nouveau opérationnelle dans mon environnement de développement.

Mise à jour de novembre 2009

J'utilise maintenant Netbeans 6.7 sous Windows et, dans l'ensemble, j'en suis très heureux. Le seul inconvénient est qu’il installe JRuby 1.2 et que j’avais besoin d’installer JRuby 1.3 manuellement pour que quelque chose fonctionne (je ne me souviens plus de quoi) et j’ai été complètement incapable de faire fonctionner un déploiement avec Capistrano ou Vlad le Déployer. Vlad utilise Open4 qui ne fonctionne pas avec JRuby.

Mise à jour de mai 2010

Netbeans 6.8 étant fourni avec JRuby 1.4, vous n’aurez plus à vous débrouiller avec l’installation manuelle de JRuby 1.3. En outre, il semble que dans JRuby 1.5 Open4 fonctionne maintenant, ce qui signifie que Vlad pourrait commencer à fonctionner.

Un programme d'installation complet est disponible à l'adresse http://railsinstaller.org/ , qui vaut la peine d'être consulté.

Personnellement, j’ai trouvé très facile de faire fonctionner Ruby + Rails sous Windows. Du téléchargement à la navigation sur ma première application 'HelloWorld', il m'a fallu 15 minutes. Je ne me suis même pas préoccupé des produits InstantRails.

Par la suite, je ne peux pas dire que j'ai rencontré l'un des problèmes de vitesse signalés ou des problèmes avec Gems sous Windows.

Ces gars font aussi un bon ajout aux développeurs Ruby pour Visual Studio:

http://www.sapphiresteel.com/

La dernière fois que j'ai manipulé Rails sous Windows, j’utilisais Instant Rails et trouvais que c’était un processus assez pénible, à l’exception du manque de mises à jour d’Instant Rails (qui, vu son site Web, est encore un peu instant, Rails 2.0 utilise ROR 2.0, alors que la version la plus récente est 2.1). Vous pouvez également rechercher les réponses à cette question car elle mentionne un certain nombre d'autres moyens de faire fonctionner RoR facilement sur Windows.

Vous disposez d'options Windows pour tout installer et tout installer, telles que Instantrails :

Cependant, mon expérience personnelle en essayant de faire fonctionner des collègues sous Windows est que c'est une expérience assez pénible. Vous devriez être en mesure de tirer le meilleur parti (sinon de tout) du monde actif, mais soyez prêt à passer un peu de temps à perdre votre temps (et à vous frustrer).

YMMV

Je recommanderais probablement Linux ou Mac pour le développement de rails (mais je suis légèrement biaisé contre Windows, vous devrez peut-être le prendre avec un grain de sel).

Si vous êtes bloqué sous Windows, vous pouvez utiliser des serveurs virtuels exécutant Linux / BSD / what-have-you.

Il résout également de nombreux autres problèmes (vous permettant d’essayer facilement plusieurs configurations de serveur, etc.).

Si vous ne pouvez vous échapper de Windows, utilisez VMware et exécutez une certaine forme de Linux (Ubuntu est populaire). Votre limite N ° 1 sera constituée de gemmes compilées qui ne fonctionnent pas bien sous Windows.

La majorité des tutoriels supposent que vous utilisez une forme de * nix, c’est quand vous commencez à vous échapper du simple échafaudage que vous ressentez la douleur. La manipulation d’images, la recherche en texte intégral et même certains adaptateurs de base de données ne fonctionneront que sur * nix ou seront difficiles à installer.

La majorité des hôtes Web utilisent également Linux. Il est bon de développer sur la même plate-forme que votre hôte pour éviter les problèmes de déploiement.

En général, les performances de Rails sont un problème sous Windows.

En ce qui concerne votre configuration de déploiement, vous pouvez exécuter Rails dans FCGI ou utiliser mongrel (et configurer Apache ou IIS en tant que proxy). mod_rails ( http://www.modrails.com ) est la meilleure option de déploiement pour Rails aujourd'hui, mais ne le fait pas ne pas fonctionner sous Windows.

Vous pouvez trouver plus de chance en utilisant JRuby sous Windows pour exécuter Rails dans l’environnement JVM de votre choix (tomcat, serveur J2EE, etc.).

IronRuby n’existe pas encore pour l’exécution de Rails dans un environnement de production, mais il sera éventuellement destiné à l’exécuter dans un environnement ASP.NET (IIS).

Vous pouvez simplement utiliser Cygwin et sa version de Ruby. Cela supprime les arguments sur le fait que les gems compilés ne fonctionnent pas sous Windows. J'ai réussi à compiler beaucoup de gems de cette façon.

La principale limitation de l’exécution de Windows est que beaucoup de choses sont très lentes.

Voir ce fil . Pour une discussion.

Des choses simples comme " script / console " et l'exécution de tâches rake prend 5 fois plus de temps sous Windows que sous Linux ou Mac.

Les autres limitations sont:

  • Pas d'IE6 sur Vista.
  • BackgroundRB et de nombreux autres gems basés sur c ne fonctionnent pas sous Windows.
  • Pas de passager

Je ne suis pas un développeur de rails moi-même, mais j’ai pensé que cela pourrait être intéressant. Microsoft a publié IronRuby 1.0, une version de Ruby qui fonctionne sur la plate-forme .NET qui semble fonctionner 4x plus vite que l'implémentation officielle de Rails sous Windows.

http://www.drdobbs.com/open-source/224600662

Site officiel http://ironruby.codeplex.com/

Pour accélérer, vous pouvez essayer mon chargeur speeder upper (aide les rails à courir plus vite en somnolant): https: // github .com / rdp /aster_require Également checkout spork, qui fonctionne en somnolant

La

variante de RailsIntaller est RailsFTW . Le Ruby & Amp; Les rails sont plus à jour.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top