IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bioinformatique Perl Discussion :

Bio EnsEMBL DBSQL DBAdaptor


Sujet :

Bioinformatique Perl

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 37
    Points
    37
    Par défaut Bio EnsEMBL DBSQL DBAdaptor
    Bonjour,

    J'ai un problème avec un module.
    J'ai récupéré un script Perl, qui affiche l'erreur suivante dans éclipse :

    Can't locate Bio/EnsEMBL/DBSQL/DBAdaptor.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.0 /usr/local/share/perl/5.10.0 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .)

    au niveau de la ligne de code :

    use Bio::EnsEMBL:BSQL:BAdaptor;

    Je crois comprendre que l'erreur vient du fait que le module n'est pas trouvé.
    J'ai suivi la documentation sur le site d'ensemble :http://www.ensembl.org/info/docs/api...tallation.html

    J'ai donc exécuté les commandes suivantes après avoir crée un dossier src dans ${HOME}.
    PERL5LIB=${PERL5LIB}:${HOME}/src/bioperl-live
    PERL5LIB=${PERL5LIB}:${HOME}/src/ensembl/modules
    PERL5LIB=${PERL5LIB}:${HOME}/src/ensembl-compara/modules
    PERL5LIB=${PERL5LIB}:${HOME}/src/ensembl-variation/modules
    PERL5LIB=${PERL5LIB}:${HOME}/src/ensembl-functgenomics/modules
    export PERL5LIB

    A noter que j'ai aussi installé BioPerl via les paquets synaptics.

    Et j'ai toujours l'erreur dans Eclipse au niveau de cette ligne.

    J'utilise une distribution Ubuntu Karmic Koala, Eclipse Classic 3.5.1, Perl 5.10, BioPerl 1.6.

    Des idées?

    Merci.

  2. #2
    Membre confirmé Avatar de Beniou
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    357
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Novembre 2009
    Messages : 357
    Points : 515
    Points
    515
    Par défaut
    Bonjour,

    Permière chose ; ton réperertoire contenant les modules Ensembl sont bien dans un répertoire Bio ? Parce qu' apparemment il faut qu'il soit dans ton répertoire Bioperl (Bio) vu que l'import du module se fait via Bio::etc...

    Si oui et : bon je sais que ce n'est pas très joli mais personnellement j'installe toujours mes modules dans un des répertoires de @INC parce que les variables d'environnement des fois ...

    Donc une option "pas très propre" si tu as les droits bien sûr serait de déplacer tes modules en question dans un des répertoires de @INC.

    Ex pour Bioperl il est dans /usr/lib/perl/5.10/Bio

    Mais je pense qu'avec la configuration des variables d'environnement ça doit marcher aussi.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 46
    Points : 37
    Points
    37
    Par défaut
    Bonjour,

    Oui en plaçant le repertoire Bio dans /usr/lib/perl/5.10 cela fonctionne.

    J'avais aussi trouvé comme autre solution de mettre en début du script :

    use lib '/home/jp/src/ensembl/modules'

    Cependant toujours un problème quand j'essaie de configurer la variable d'environnement avec des nouveaux paths mais bon.

    Merci.
    Problème résolu.

  4. #4
    Membre confirmé Avatar de Beniou
    Homme Profil pro
    Inscrit en
    Novembre 2009
    Messages
    357
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Novembre 2009
    Messages : 357
    Points : 515
    Points
    515
    Par défaut
    Effectivement le pragma "use lib" permet d'inclure des modules se situant dans un répertoire particulier. Seulement, ce n'est pas très portable si tu exécute ton code dans un environnement différent, sur une autre machine etc.
    Il y aussi le module Findbin qui permet de savoir où ton script s'exécute et ainsi inclure des modules directement depuis ce répertoire (via des chemins relatifs du style "../../modules" etc.

    Autre chose :si le problème est résolu n'oublies pas le tag résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Bio::Tools::Run::Ensembl et Perl API ensembl
    Par Jasmine80 dans le forum Bioinformatique
    Réponses: 0
    Dernier message: 05/07/2011, 09h10
  2. BIOS - WAIT (AT,PS)
    Par Biglo dans le forum x86 16-bits
    Réponses: 4
    Dernier message: 18/02/2003, 20h50
  3. Afficher la zone de données du BIOS
    Par foussa dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 20/01/2003, 16h47
  4. [Kylix] ensemble
    Par chico dans le forum EDI
    Réponses: 3
    Dernier message: 17/07/2002, 12h22
  5. Réponses: 3
    Dernier message: 12/06/2002, 19h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo