Tevac Photo Contest - Gesti Quotidiani
    
Sito Italiano indipendente per utenti Apple Macintosh iPod e iPhone
  Tevac powered by Apple Xserve Intel - Mac OS X Server
Home  :  Nuova Segnalazione  :  Tevac Photo  :  Forum  :  Ricerca  :  Stats  :  Dir  :  Link  :  Info  :  Regole  :  Contattaci
 Benvenuto su Tevac
 Sab, 17 Maggio 2008 - 07:51
Tutorial OCS Inventory NG su Mac OS X
   


Fase 6: Compilazione moduli perl

A questo punto possiamo iniziare a compilare i moduli di perl che ci interessano.
Anche qui ci sono 2 strade possibili:

  1. utilizzare il cpan, ossia utilizzare il servizio standard che perl offre per l'installazione dei propri moduli
  2. utilizzare un servizio già pacchettizzato (darwinports, fink etc.)

io ho adottato la prima soluzione.

Spieghiamo:
cpan è una utility che consente di installare i moduli di perl, essenzialmente si connette ad un repository di moduli, prende la versione più aggiornata di un modulo, la scarica, la compila e la installa.
Noi dobbiamo installare un po' di moduli.
Ad eventuali domande di pacchetti che richiedono dipendenze rispondiamo di sì, oppure premiamo invio, su questi pacchetti non abbiamo bisogno di condizioni speciali.

Nota su darwinports,fink e varie:
non ho scelto questo modo, perchè non sono sicuro che questi pacchetti si integrino con il perl di sistema, anzi, spesso creano in /opt/local/ le proprie versioni di perl, inoltre almeno un modulo necessita di compilazione manuale.

Andiamo quindi ad installare in questo modo:

- Apriamo Terminale
Se avete già utilizzato cpan, non dovrebbero esserci problemi, altrimenti il sistema di cpan, potrebbe farvi alcune domande, rispondete alle domande che vi vengono poste, per il setup iniziale.
digitiamo:

sudo cpan -i Compress::Zlib

se il pacchetto non dà errori, procediamo con

sudo cpan -i DBI

se il pacchetto non dà errori, procediamo con

sudo cpan -i Net::IP

se il pacchetto non dà errori, procediamo con

sudo cpan -i Apache::DBI

se il pacchetto non dà errori, procediamo con

sudo cpan -i XML::Simple

XML chiederà di installare anche XML::Namespaces, XML::Sax, XML::Sax-Expat, XML::Parser
Bene, siamo a metà del lavoro.
Adesso arriva la parte difficile, sono 2 moduli un po' ostici, uno è SOAP::Lite, mentre l'altro è DBD::Mysql

Iniziamo da SOAP::Lite

sudo cpan -i SOAP::Lite

Il sistema lavorerà per un po', se va tutto bene,meglio, è facile però che il sistema si fermi sul make-test perchè trova alcune incongruenze.
Per risolvere la cosa, forziamo un po' il sistema.
Digitiamo

sudo su

inseriamo la nostra password
**** Ora state lavorando come root quindi occhio a cosa fate ****

Ci spostiamo nella cartella /var/root/.cpan/build/

cd /var/root/.cpan/build/

cerchiamo una cartella che si chiamerà SOAP-Lite-x.xx ed entriamo

cd SOAP-Lite*

a questo punto diamo un

make

seguito da

make install

Non dovrebbero esserci errori, quindi digitiamo

exit

Fase 7: Installazione di DBD::mysql

Io a questo punto andrei a dormire.
Comunque vediamo l'ostacolo più duro, DBD::mysql

Scarichiamo manualmente il modulo da qui http://search.cpan.org/CPAN/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.004.tar.gz

Torniamo su terminale e digitiamo

sudo su

inseriamo la nostra password
**** State lavorando come root quindi occhio a cosa fate ***

Ci spostiamo nella cartella /var/root/.cpan/build/

cd /var/root/.cpan/build/

ci copiamo dalla scrivania il file

cp /Users//Desktop/DBD-mysql-4.004.tar.gz .

a questo punto decomprimiamo

tar fxvz DBD-mysql-4.004.tar.gz

cerchiamo una cartella che si chiamerà DBD-mysql-x.xx ed entriamo

cd DBD-mysql*

capiamo cosa stiamo facendo: stiamo configurando a mano il pacchetto, andando a specificare dove si trovano le librerie di mysql, che cpan cercherebbe da altre parti.

digitiamo quindi

perl MakeFile.PL --mysql_config=/usr/local/mysql/bin/mysql_config

seguito da

make

a questo punto effettuiamo un bel

make test

Fase 8 : Possibili errori in fase di compilazione di DBD::mysql

nel dare make test, gli errori comuni sono 2:

  1. make test non trova il socket di mysql
  2. make test ha problemi di connessione al socket, per password di root pre-impostate (allora mi state prendendo in giro e una installazione di mysql c'era già)

1) Soluzione a "non trova il socket di mysql" , errore Can't connect to local MySQL server through socket '/tmp/mysql.sock'

Un po' incasinato da risolvere, per un sacco di problemi. Allora, io ho risolto così.
Innanzitutto, il file di sock, è un file che utilizzano sia php che perl che altri programmi per collegarsi all'istanza del database, quindi una sorta di "device di database", il sock ci dice che il pacchetto sta funzionando ed è attivo e possiamo connetterci a lui tramite questo file.
Dal 10.4 c'è un po' di casino sul "DOVE deve stare sto cavolo di mysql.sock" ?
Alcuni l'hanno sempre visto in /var/mysql/mysql.sock , altri sostengono che debba stare in /tmp/mysql.sock
Io sono di derivazione *nix, quindi l'ho messo al suo posto ossia in /var/mysql/mysql.sock, poi, per non saper nè leggere nè scrivere ho inserito un bel soft-link tra i due.
C'è anche un articolo di Tevac su questo problema: http://www.tevac.com/article.php/2006012513085364

cd /etc/

sudo vi my.cnf

e inserisco in my.cnf

[mysqld]

socket=/var/mysql/mysql.sock

salvo ed esco.

A questo punto:

sudo mkdir /var/mysql/

chmod 755 /var/mysql/

a sto punto abbiamo detto a mysql, che il suo socket è in /var/mysql/. Questo serve per OCS, però non possiamo scontentare nessuno in fatto di socket, quindi andiamo nella cartella /tmp
R avviamo mysql, io utilizzo MySQL Administrator

cd /tmp

sudo ln -s /var/mysql/mysql.sock mysql.sock

2 ) Soluzione a "ha problemi di connesione"

make test vuole che ci sia un utente root senza password, grazie.
Quindi provvediamo a resettare temporaneamente la pwd di root su mysql, io uso MySQL Administrator

Se il make test passa senza problemi potete dare un bel

make install

se il make non dovesse andare a buon fine, segnate l'errore e segnalatemelo.
se invece va tutto a buon fine dovremmo esserci, da adesso in poi la strada è decisamente in discesa.

digitiamo

exit

 
-
 
 
Relativo a..



Opzioni

 Copyright © 2008 Tevac
 Tutti i marchi e copyrights su questa pagina appartengono ai rispettivi proprietari.
Powered By Geeklog 
Pagina creata in 0,18 secondi