Ruby e mysql

Ciao, mi sto avvicinando al mondo ruby. Sto facendo le prime cose con
RoR e Ruby. Per rails uso Locomotive che trovo molto comodo. Ora però
volevo fare un piccolo progetto in ruby solamente. In pratica un
programma che accede a mysql e crea un xml delle tabelle.
Ora visto che con rails accedo facilmente al database, pensavo che
fosse già inclusa la libreria mysql, invece con require “mysql” mi
dice che non lo trova.
In ogni caso ho provato ad installarlo con gem senza risultati.
L’errore è questo:

ERROR: Failed to build gem native extension.

Gem files will remain installed in
/usr/lib/ruby/gems/1.8/gems/mysql-2.7 for inspection.
ruby extconf.rb install mysql\nchecking for mysql_query() in
-lmysqlclient… no
checking for main() in -lm… yes
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lz… yes
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lsocket… no
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lnsl… no
checking for mysql_query() in -lmysqlclient… no

Non capisco se è un problema di dipendenze o altro. Sapete come
risolvere questo problema?

Ciao

Simone

Ciao Simone,
devi installare il pacchetto devel di mysql.
Quale distribuzione Linux utilizzi?

2006/11/19, Luca P. [email protected]:

Ciao Simone,
devi installare il pacchetto devel di mysql.
Quale distribuzione Linux utilizzi?

Giusto mi sono scordato di dire che sono su mac os X.
cmq grazie ora darò una occhiata al devel.

Ciao

Simone

Luca ha ragione (anche se usi Mac OS X): il modulo mysql per ruby è
scritto in C (c’è uno anche fatto in Ruby puro mi pare) e l’estensione
usa senz’altro le header file delle librerie di sviluppo di MySql.
Locomotive però fornisce già il binario di mysql quindi dovrebbe
funzionare già. Se esegui il tuo script da dentro la console di
Locomotive hai gli stessi problemi? Secondo me no e in tal caso
dovresti cercare di replicare l’environment che crea Locomotive nel
tuo shell normale. Ricordati anche che Mac OS X viene fornito già con
Ruby, ma è la 1.8.2 e non va bene mi sa.
Quindi, se vuoi usare Ruby al di fuori di Locomotive, bada ad avere
una versione aggiornata (da Darwin ports direi) e a che l’ambiente è
configurato per bene e installa il pacchetto devel di mysql (sempre
da
Darwin ports), come ti suggerisce Luca.
:slight_smile:
Luca P. wrote:

 Ciao Simone,
 devi installare il pacchetto devel di mysql.
 Quale distribuzione Linux utilizzi?
 On 19/11/06, Simone Tessaro [1]<[email protected]> wrote:

 Ciao, mi sto avvicinando al mondo ruby. Sto facendo le prime cose
 con
 RoR e Ruby. Per rails uso Locomotive che trovo molto comodo. Ora
 però 
 volevo fare un piccolo progetto in ruby solamente. In pratica un
 programma che accede a mysql e crea un xml delle tabelle.
 Ora visto che con rails accedo facilmente al database, pensavo che
 fosse già inclusa la libreria mysql, invece con require "mysql" mi
 dice che non lo trova.
 In ogni caso ho provato ad installarlo con gem senza risultati.
 L'errore è questo:
     ERROR: Failed to build gem native extension.
 Gem files will remain installed in
 /usr/lib/ruby/gems/1.8/gems/mysql-2.7 for inspection.
   ruby extconf.rb install mysql\nchecking for mysql_query() in
 -lmysqlclient... no
 checking for main() in -lm... yes
 checking for mysql_query() in -lmysqlclient... no
 checking for main() in -lz... yes
 checking for mysql_query() in -lmysqlclient... no
 checking for main() in -lsocket... no
 checking for mysql_query() in -lmysqlclient... no
 checking for main() in -lnsl... no
 checking for mysql_query() in -lmysqlclient... no
 Non capisco se è un problema di dipendenze o altro. Sapete come
 risolvere questo problema?
 Ciao
 Simone
 _______________________________________________
 Ml mailing list
 [2][email protected]
 [3]http://lists.ruby-it.org/mailman/listinfo/ml

 _______________________________________________
 Ml mailing list
 [4][email protected]
 [5]http://lists.ruby-it.org/mailman/listinfo/ml


“Remember, always be yourself. Unless you suck.” - Joss Whedon

References

  1. mailto:[email protected]
  2. mailto:[email protected]
  3. http://lists.ruby-it.org/mailman/listinfo/ml
  4. mailto:[email protected]
  5. http://lists.ruby-it.org/mailman/listinfo/ml

RoR e Ruby. Per rails uso Locomotive che trovo molto comodo. Ora però
volevo fare un piccolo progetto in ruby solamente. In pratica un
programma che accede a mysql e crea un xml delle tabelle.

Vale un’occhiata a come fanno questo in Rails:

=> #<Task:0xb784e368 @attributes={“name”=>“Do something”, “done”=>“f”,
“priority”=>“1”, “notes”=>“do it now”, “id”=>“137”, “user_id”=>“1”,
“parent_id”=>nil}>

t.to_xml
=> “<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\n Do
something\n <done type="boolean">false\n <priority
type="integer">1\n do it now\n <id
type="integer">137\n <user-id type="integer">1\n
\n\n”

Comodissimo per cose semplici!


David N. Welton

Linux, Open Source Consulting

Mi collego all’argomento per fare una domanda veloce:

é possibile dire a RoR di collegarsi al MySql installato con EasyPhp?
se si, come?

Scusate l’intrusione… e l’ignoranza… grazie sin d’ora.

si, è la stessa cosa, tu dai sempre localhost come server e imposti user
e
password del tuo db.
per far questo basta editare il file database.yml presente nella dir
config
della tua applicazione.

Saluti Andrea

----- Original Message -----
From: “Settimino Delorghi” [email protected]
To: [email protected]
Sent: Thursday, November 23, 2006 12:39 PM
Subject: [ruby-it] Re: ruby e mysql