Domanda

Nella documentazione di installazione di RoR menziona che ci sono molte limitazioni all'esecuzione di Ruby on Rails su Windows e, in alcuni casi, intere librerie non funzionano.

Quanto sono gravi queste limitazioni, dovrei sempre impostare Linux su codice / eseguire RoR, e si prevede che Iron Ruby risolva queste limitazioni o sono fondamentali per il sistema operativo stesso?

EDIT Grazie per la risposta sull'installazione e l'esecuzione su Linux, ma sto davvero cercando di capire i limiti di funzionalità come indicato nella documentazione di installazione e non librerie funzionanti - Sto provando a trovare un link al commento, ma è stato fatto riferimento in un'installazione leggimi quando ho installato il pacchetto msi penso

Modifica Grazie per i riferimenti a IronRuby di recente, è certamente un progetto da guardare, e poiché, ovviamente, è un linguaggio .NET, sarà prezioso se manterrà le promesse. Alla fine, tuttavia, nel mio caso, ho appena morso il proiettile e ho installato un server Ubuntu.

&

lt; gt polarizzazione &; Avrei dovuto farlo anni fa & Lt; / bias & Gt;

È stato utile?

Soluzione

Ecco una panoramica dei problemi attuali con Rails su Windows:

  • Ruby e Rails sono più lenti su Windows rispetto ai sistemi operativi simili a Unix.
  • Alcune gemme e librerie non funzionano su Windows.
  • Alcuni Unix-isms non sono disponibili su Windows ( esempi ).
  • La comunità è principalmente su Mac o Linux ( Questa è una questione particolarmente difficile da affrontare; nessuno vuole essere solo su un'isola quando il resto della tribù fa festa, si diverte e va d'accordo sull'altra isola. La comunità è importante. Sembra che la maggior parte degli sviluppatori Windows che iniziano con Rails passano rapidamente a un Mac o Linux. Tuttavia , la piccola comunità di utenti di Windows Ruby che persiste è estremamente amichevole, dedicato e competente - vai a salutare . )

Nota che molti dei consigli che seguono sono ormai superati a causa dei magnifici sforzi del team RubyInstaller nel portare stabilità, compatibilità e prestazioni di Ruby su Windows. Non devo più usare VirtualBox, che dice molto su quanto è arrivato Ruby su Windows.

Se desideri maggiori dettagli tecnici, è necessario leggere quanto segue. :

La citazione scelta da quest'ultima è:

  

AkitaOnRails: La cosa più ovvia è che qualsiasi Gemma con estensioni C senza binari adeguati per Windows fallirà. Cercare di eseguire i comandi della shell fallirà e anche RubyInline. Cos'altro?

     

Luis Lavena: Hehe, questa è solo la punta dell'iceberg

Detto questo, non trovo doloroso lo sviluppo con Rails su Windows troppo . L'uso di Ruby è, per la maggior parte, un piacere. Eviterei InstantRails perché, per essere sinceri, è altrettanto facile installare Ruby correttamente usando il programma di installazione con un clic, quindi fare un gem install rails. Se hai bisogno di Apache e MySQL, WAMP è una buona scommessa, anche se anche questi non sono necessari se ti limiti a Ibrido e SQLite.

Quello che ho intrapreso di recente è eseguire VirtualBox con un'istanza di Ubuntu Server che rispecchia da vicino il server di distribuzione. Mappare un'unità di rete su Ubuntu Server, quindi modifico ed eseguo il mio codice direttamente sulla VM. Utilizza pochissima memoria (attualmente utilizza ~ 43 MB; contrasto con Firefox, che utilizza ~ 230 MB) e Rails ha prestazioni migliori rispetto all'esecuzione nativa su Windows. Inoltre puoi sperimentare il tuo server virtuale in relativa sicurezza. È una configurazione davvero piacevole, lo consiglio vivamente.

Infine, ecco un paio di blog su Ruby / Rails rivolti agli utenti Windows:

Altri suggerimenti

Ho scoperto che rendere operativo un ambiente di sviluppo con Instant Rails su Windows è stato davvero semplice. Soprattutto quando si utilizza Netbeans o Radrails come IDE.

Meno di un lavoro di 10 minuti.

Qual è stato il problema per chi ha lottato?

Nessuno ha ancora menzionato Bitnami RubyStack ? Lo uso da anni, insieme a RadRails. Include Apache, MySQL / Postgre, phpmyadmin, git ecc. Ruby 1.9.2 / Rails 3.0b opzionale. Puoi anche eseguire il sapore Ubuntu di RubyStack in una VM ma non l'ho ancora provato.

Sto sviluppando Rails su un PC Windows da un paio d'anni e non ho avuto problemi reali con l'installazione al primo avvio. Tuttavia, recentemente ho ricostruito la mia macchina e ho faticato a far funzionare l'installer di One-Click Ruby e l'ultima versione di Gems. Quindi questo è quello che ho provato.

Opzione 1: esegui una macchina virtuale Linux

Sono rimasto davvero colpito dall'idea di Charles Roper di eseguire Rails in una macchina virtuale Linux, e questa è la strada che ho intrapreso inizialmente. È andato tutto abbastanza bene e lo sto documentando su budanters.blogspot.com . Tuttavia ho avuto difficoltà ad accedere al server MySQL (in Linux Virtual Machine) dall'host Windows.

Opzione 2: utilizzare jRuby

Di recente ho installato la versione Windows di NetBeans 6.5 bundle di Ruby e senza essere consapevole di ciò, questo installa JRuby e le gemme Rails. L'IDE ha un'interfaccia utente per installare Gems e ora ho eseguito il backup e l'esecuzione della mia vecchia applicazione nel mio ambiente di sviluppo.

Aggiornamento novembre 2009

Ora utilizzo Netbeans 6.7 su Windows e nel complesso ne sono molto contento. L'unico aspetto negativo è che installa JRuby 1.2, e ho dovuto installare JRuby 1.3 manualmente per far funzionare qualcosa (non ricordo cosa) e non sono riuscito a far funzionare la distribuzione con Capistrano o Vlad the Deployer. Vlad utilizza Open4 che non funziona con JRuby.

Aggiornamento maggio 2010

Netbeans 6.8 viene fornito con JRuby 1.4, quindi non è più necessario smanettare con l'installazione manuale di JRuby 1.3. Inoltre sembra che in JRuby 1.5 Open4 ora funzionerà, il che significa che Vlad potrebbe iniziare a lavorare.

Esiste un programma di installazione in pacchetto disponibile all'indirizzo http://railsinstaller.org/ che vale la pena provare.

Personalmente ho scoperto che far funzionare Ruby + Rails su Windows è un gioco da ragazzi. Dal download alla navigazione alla mia prima app "HelloWorld" mi ci sono voluti tutti i 15 minuti. Non mi sono nemmeno preoccupato di nessuna delle cose di InstantRails.

Successivamente non posso dire di aver riscontrato nessuno dei problemi di velocità segnalati o problemi con Gemme in Windows.

Questi ragazzi fanno anche un bel addetto agli sviluppatori di Ruby per Visual Studio:

http://www.sapphiresteel.com/

L'ultima volta che ho armeggiato con Rails su Windows, ho usato Instant Rails e l'ho trovato un processo abbastanza doloroso, tranne per la mancanza di aggiornamenti a Instant Rails (che, dall'aspetto del sito Web è ancora un po ' di un problema, poiché Rails 2.0 istantaneo utilizza ROR 2.0, mentre la versione più recente è 2.1). Puoi anche esaminare le risposte a questa domanda in quanto menziona numerosi altri modi per far funzionare RoR su Windows facilmente.

Hai opzioni di Windows per installare e installare tutto, come Instantrails :

Tuttavia, la mia esperienza personale con il tentativo di far funzionare i colleghi su Windows è un'esperienza piuttosto dolorosa. Dovresti essere in grado di ottenere la maggior parte (se non tutto) in esecuzione, ma essere pronto a passare un po 'di tempo a gironzolare (e sentirti frustrato).

YMMV

Probabilmente consiglierei Linux o Mac per lo sviluppo di rotaie (ma sono leggermente distorto rispetto a Windows, quindi potrebbe essere necessario prenderlo con un pizzico di sale).

Un'opzione se sei bloccato su Windows è avere server virtuali che eseguono Linux / BSD / what-have-you.

Risolve anche molti altri problemi (che consente di provare facilmente più configurazioni di server, ecc.)

Se non riesci ad allontanarti da Windows usa VMware ed esegui qualche forma di Linux (Ubuntu è popolare). Il tuo limite n. 1 saranno le gemme compilate che non giocano bene su Windows.

La maggior parte dei tutorial presume che tu abbia una forma di * nix, è quando inizi a rompere al di fuori delle impalcature di base quando sentirai il dolore. La manipolazione delle immagini, la ricerca full-text e persino alcuni adattatori db funzioneranno solo su * nix o saranno un problema da configurare.

Anche la maggior parte degli host web esegue Linux, è bene svilupparsi sulla stessa piattaforma dell'host, per evitare mal di testa.

In generale, le prestazioni di Rails sono un problema su Windows.

Per quanto riguarda la configurazione della distribuzione, è possibile eseguire Rails in FCGI o utilizzare mongrel (e impostare Apache o IIS come proxy). mod_rails ( http://www.modrails.com ) è la migliore opzione di distribuzione per Rails oggi, ma non funziona su Windows.

Potresti trovare più fortuna usando JRuby su Windows per eseguire Rails nell'ambiente JVM che desideri (tomcat, server J2EE, ecc.)

IronRuby non è ancora lì per eseguire Rails in un ambiente di produzione, ma alla fine sarà finalizzato all'esecuzione di Rails all'interno di qualsiasi ambiente ASP.NET (IIS).

Potresti semplicemente usare Cygwin e la sua versione di Ruby. Ciò elimina gli argomenti sulle gemme compilate che non funzionano su Windows: sono riuscito a compilare molte gemme in quel modo.

Il limite maggiore nell'esecuzione in Windows è che molte cose sono super lente.

Vedi questa discussione . Per una discussione

Cose semplici come " script / console " e l'esecuzione di attività rake richiederà 5 volte più tempo su Windows rispetto a Linux o Mac.

Altre limitazioni sono:

  • Nessun IE6 su Vista.
  • BackgroundRB e molte altre gemme basate su c non funzionano su Windows.
  • Nessun passeggero

Non sono uno sviluppatore di rotaie, ma ho pensato che questo potesse essere interessante. Microsoft ha rilasciato IronRuby 1.0, è una versione di Ruby che funziona sulla piattaforma .NET che sembra funzionare 4 volte più veloce rispetto all'implementazione ufficiale di Rails su Windows.

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

Sito ufficiale http://ironruby.codeplex.com/

Per uno speedup potresti provare il mio speeder loader superiore (aiuta le rotaie a correre più veloce in doze): https: // github .com / RDP / faster_require Controlla anche spork, che funziona a doze

Alternativa di RailsIntaller è RailsFTW . L'amplificatore Ruby &; Le rotaie sono più aggiornate.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top