Pagina 1 di 1

[SOLVED] cudatoolkit: "Can't locate InstallUtils.pm in @INC"

Inviato: sab 2 nov 2019, 17:25
da gian_d
Ho avviato lo slackbuild del repository di Ponce per l'installazione di cudatoolkit, ma compariva questo messaggio di errore:

Codice: Seleziona tutto

Can't locate InstallUtils.pm in @INC (you may need to install the InstallUtils module) (@INC contains: ecc. ecc. ) at ./install-linux.pl line 6.
All'inizio ho pensato a qualche problema di configurazione di perl o di impostazione di variabili d'ambiente, ma nel sistema non ho trovato traccia di questo eseguibile. Essendo del tutto ignorante su ciò che ha a che fare con perl ho provato anche a installare perl-ExtUtils-Install ma non serviva.
Non sapendo che pesci pigliare, ho cercato in rete mettendo il messaggio d'errore e ho trovato questa pagina: https://devtalk.nvidia.com/default/topi ... pm-in-inc/

Non so se nella Slackware il problema era generato dalla configurazione del mio sistema, ma ho provato, senza contarci troppo ma ho adattato un suggerimento riportato in quella discussione. In sostanza ho fatto questo (nella directory contenente il sorgente e lo slackbuild):

Codice: Seleziona tutto

# ./*run -tar mxvf
# cp InstallUtils.pm /usr/lib64/perl5
# export $PERL5LIB
# sh cudatoolkit.SlackBuild
Lo slackbuild è andato a buon fine creando il pacchetto. A quanto pare mi è bastato estrarre quell'eseguibile (InstallUtils.pm) dal pacchetto rilasciato da Nvidia, copiarlo a mano in perl5 e impostare una variabile d'ambiente. Non ci ho capito granché ma ha funzionato. Alla fine ho poi rimosso l'eseguibile da perl5, presumo che una volta creato il pacchetto quel file non sia più necessario.

Re: [SOLVED] cudatoolkit: "Can't locate InstallUtils.pm in @INC"

Inviato: sab 2 nov 2019, 18:25
da ponce
in realta' questo succede perche' nella nuova versione di perl in current la variabile d'ambiente perl @INC non comprende piu' la directory locale da cui si esegue lo script perl (per motivi di sicurezza).
questo pero' e' aggirabile passando allo SlackBuild una variabile d'ambiente, PERL_USE_UNSAFE_INC=1, che ripristina il passaggio della directory locale dentro @INC: in pratica, devi lanciare lo SlackBuild con

Codice: Seleziona tutto

PERL_USE_UNSAFE_INC=1 ./cudatoolkit.SlackBuild
questo non e' stato corretto nel repository non ufficiale per current per gli script interessati perche' dovrebbero essere gli sviluppatori dei vari software che usano perl a dover sistemare questa cosa.

Re: [SOLVED] cudatoolkit: "Can't locate InstallUtils.pm in @INC"

Inviato: sab 2 nov 2019, 18:34
da gian_d
Grazie Matteo
ora è tutto più chiaro. E anche più immediata. Mi trascrivo il parametro del comando nella copia del README come memo nel caso dovessi trovarmi nella condizione di dover ricompilare / aggiornare.