# [RISOLTO] vmware-workstation 6.5.3 compilare i moduli

## ivan2k

Ciao a tutti sono nuovo del forum.

Ho installato con successo vmware workstation 6.5.3 che è stable in portage. Quando lo avvio però mi dice che deve compilare i moduli per il mio kernel e mi chiede il percorso dei "C header files".

Ho provato a dargli questi percorsi:

```
/usr/src/linux

/usr/src/linux/include

/usr/include

/usr/include/linux
```

Ma continua a darmi questo errore:

```
C header files matching your running kernel were not found.  Refer to your distribution's documentation for installation instructions.
```

La versione del mio kernel è: 2.6.34-gentoo-r12 e ho installato vmware-workstation 6.5.3.185404.

Qualcuno può aiutarmi? Grazie in anticipo ...Last edited by ivan2k on Sun Nov 14, 2010 11:43 pm; edited 1 time in total

----------

## Zizo

Ciao e benvenuto.

Controlla di aver installato "app-emulation/vmware-modules-1.0.0.25-r1" che sono stabili e di aver avviato il servizio "/etc/init.d/vmware", che eventualmente puoi far partire con

```
/etc/init.d/vmware start
```

.

Se così non dovesse funzionare, magari perchè i modules non si installano, prova così:

da terminale entri nella cartella "/usr/src/", nella quale hai la cartella "linux-2.6.34-gentoo-r12". Dovrebbe esserci anche il collegamento simbolico "linux" che punta ad essa. Nel caso non ci fosse o non puntasse a quella cartella puoi (ri)crearlo con

```
cd /usr/src && ln -i -s linux-2.6.34-gentoo-r12 linux
```

.

Fatto ciò entra in "/usr/src/linux" e compila il kernel.

Una volta terminata la compilazione fai attenzione a non eseguire "make clean" o "make distclean" che cancellerebbero i file appena generati.

Ora puoi (ri)emergere app-emulation/vmware-modules e procedere come indicato all'inizio.

----------

## ivan2k

Intanto grazie per l'interessamento  :Smile: 

 *Zizo wrote:*   

> Controlla di aver installato "app-emulation/vmware-modules-1.0.0.25-r1"

 

Installato, come dipendenza di vmware-workstation.

 *Zizo wrote:*   

> e di aver avviato il servizio "/etc/init.d/vmware"

 

Lo avevo fatto, ma mi esce questo:

```
 * Caching service dependencies ...                                               [ ok ]

 * Starting VMware services:                                                      [ ok ]

 *   Virtual machine monitor                                                      [ !! ]

 *   Virtual machine communication interface                                      [ !! ]

 *   Blocking file system                                                         [ !! ]

 *   Virtual ethernet                                                             [ !! ]
```

Penso sia dovuto appunto alla mancanza dei moduli.

 *Zizo wrote:*   

> Se così non dovesse funzionare, magari perchè i modules non si installano, prova così:
> 
> da terminale entri nella cartella "/usr/src/", nella quale hai la cartella "linux-2.6.34-gentoo-r12". Dovrebbe esserci anche il collegamento simbolico "linux" che punta ad essa. Nel caso non ci fosse o non puntasse a quella cartella puoi (ri)crearlo con
> 
> ```
> ...

 

Qui viene un mezzo dubbio, premetto che me ne intendo a sufficienza di compilazioni di kernel, lo faccio da 2 anni ormai. Per una mia comodità ho "appeso" alla versione del kernel una mia stringa quindi la mia versione del kernel risulta: "2.6.34-gentoo-r12_Host-modular". Non sto a spiegarti il perché comunque il symlink /usr/src/linux punta proprio alla cartella contenente quel kernel. A questo punto mi chiedo se può essere qui l'inghippo, dovrei provare a compilare il kernel lasciando la sua versione standard?

 *Zizo wrote:*   

> Fatto ciò entra in "/usr/src/linux" e compila il kernel.

 

Fammi capire, io ho il mio kernel già compilato e funzionante devo ricompilarlo DOPO aver installato vmware-workstation per un qualche oscuro motivo?

Altra cosa: ho notato l'esistenza di un pacchetto che si chiama "linux-headers-2.6.50-r1" che non corrisponde alla versione di kernel installato, ho provato a smascherare la versione unstable 2.6.34 ma non cambia nulla.

Grazie

----------

## cloc3

probabilmente è superfluo avviare il servizio vmware, per compilare i moduli.

il pacchetto linux-headers serve per compilare le gblic, non il kernel.

penso che, per chiarire il tuo problema, dovresti guardare gli output di :

uname -rm

ls -l /usr/src/linux

ls /lib/modules/`uname -r`

qlist vmware-modules|grep "\.ko"

----------

## Zizo

Se i moduli si installano correttamente il kernel non dovrebbe avere problemi per quanto riguarda collegamenti o nomi strani.

Anche perché nonostante il nome del kernel sia stato modificato tramite "CONFIG_LOCALVERSION", il nome della cartella in "/usr/src" è sempre e comunque "linux-2.6.34-gentoo-r12". Se invece hai effettivamente cambiato nome alla cartella potresti avere fastidi in fase di disinstallatone , ma per il resto dovrebbe rimanere tutto a posto comunque.

Per quanto riguarda invece la ricompilazione te la suggerivo in quanto può capitare che per un motivo o per l'altro dopo aver compilato e copiato il kernel con i suoi moduli venga lanciato un "make clean", che impedisce la compilazione dei moduli futuri. Non è il tuo caso visto che vmware-modules emerge correttamente.

Per il resto non c'è nessun bisogno di ricompilare il kernel dopo aver installato vmware.

A questo punto potresti tentare il caricamento manuale dei moduli con "modprobe -v" e riportarne i vari errori.

----------

## ivan2k

Ok ragazzi ho risolto, è il caso di dire che mi sono perso in un bicchiere d'acqua !!   :Very Happy: 

Per prima cosa, ero convinto che i moduli fossero compilati al primo avvio di vmware-workstation e per questo mi chiedesse gli header. In realtà ho capito solo ora che vengono compilati emergendo il pacchetto vmware-modules, che andando a buon fine mi ha installato i relativi moduli in /lib/modules/`uname -r`/misc.

Ho caricato manualmente i moduli, avviato il servizio in /etc/init.d e workstation funziona, da li in poi il servizio mi da sempre ok sia in start che in stop. La mia opinione è che il sistema non si sia accorto della presenza dei nuovi moduli e quindi mi dava errore nel caricamento. Probabilmente bastava un semplice riavvio o un update-modules per risolvere il problema.

A titolo informativo per Zizo e per tutti, ho modificato il nome del kernel tramite "CONFIG_LOCALVERSION" e ho modificato anche il nome della cartella. Comunque /usr/src/linux era giusto ed è andato tutto bene.

Grazie dell'aiuto !!  :Smile: 

----------

## Zizo

Bene.

Ad ogni modo c'è da precisare che ogni modifica alla configurazione del kernel (come assegnare una stringa a CONFIG_LOCALVERSION) va fatta solo ed esclusivamente tramite gli appositi strumenti quali "make menuconfig" o "make xconfig". Mai modificare il file ".config" direttamente.

----------

