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

Langage Perl Discussion :

compiler et exécuter perl


Sujet :

Langage Perl

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Points : 10
    Points
    10
    Par défaut compiler et exécuter perl
    Bonjour,ma question est un peu bete! mais comment compiler et exécuter un programme perl en utilisant ActiveState ActivePerl

    j ai utilisé eclipse mon programme a pour but d'extraire les données d un fichier à un autre fichier avec un traitement défini ,mais eclipse me donne un message d'erreur
    le script:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    open(LIRE,"lire.txt")or die ("Erreur d'ouverture de LIRE") ; 
     
    open(ECRIRE,">ecrire.txt")or die ("Erreur de creation de TOTO") ;
     
    while () {
    print ECRIRE $_;
     
    }
     
    close(LIRE);
     
    close(ECRIRE);
    le msg d erreur :
    Erreur d'ouverture de LIRE at C:/Documents and Settings/Administrateur/workspace/fadwa1/nokia/test.pl line 1.

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 572
    Points : 2 014
    Points
    2 014
    Par défaut
    Bonjour,

    le message d'erreur est explicite : il n'arrive pas à ouvrir le premier fichier. En affichant ce que contient la variable $! dans tes deux appels à die( ), tu en connaitrais la cause

    Voici ton code remanié :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    open(LIRE,"lire.txt")or die ("Erreur d'ouverture de LIRE : $!") ; 
     
    open(ECRIRE,">ecrire.txt")or die ("Erreur de creation de TOTO : $!") ;
     
    #while () {
    while (<LIRE>) {   # c'est pas plutôt ça qu'il te faut ? ;o)
        print ECRIRE $_;
    }
     
    close(LIRE);
    close(ECRIRE);
    J'ai également changé ton while( )

    Quant à ta question qui n'est pas bête du tout : comment compiler et exécuter un programme perl en utilisant ActiveState ActivePerl, c'est le binaire 'perl.exe' qui se charge de compiler, puis de lancer ton script.

    Si de ton côté, tu souhaites compiler ** de toi-même ton script avant de le lancer, tu peux dans ta fenêtre Ms-Dos taper ceci par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    perl.exe -c -w mon_script.pl
    Le flag -c indique à Perl qu'il doit juste compiler le script. Si la compilation échoue, tu auras un message d'erreur dans ta fenêtre Ms-Dos.

    Le flag -w, je m'en sers beaucoup car fait remonter plus de messages d'avertissements. Pas indispensable mais j'aime assez

    ** la compilation d'un script Perl n'est que temporaire, ça ne donne pas lieu à un fichier exécutable. Mais y a moyen de faire.


    Edit : j'ignore le but final de ton script qui ressemble sauf erreur plus à un petit test qu'autre chose mais si l'objectif final était d'avoir une copie parfaite de ton fichier "lire.txt" sous le nom de "ecrire.txt", il existe le module (intégré au CORE, j'le précise pour pas me faire taper sur les doigts par Jedai ) File::Copy qui fait fort bien son office en copie ou déplacement de fichiers.

  3. #3
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Citation Envoyé par Arioch
    il existe le module (intégré au CORE, j'le précise pour pas me faire taper sur les doigts par Jedai ) File::Copy qui fait fort bien son office en copie ou déplacement de fichiers.
    Je ne te taperais pas sur les doigts pour ça !

    Par ailleurs fady83 j'apprécierais que tu lises au moins les titres des sujets "IMPORTANT" dans le forum Perl, par exemple le premier qui dit en grosses majuscules "NE PAS POSTER DANS CE FORUM, etc" ... Rien de bien méchant mais la prochaine fois poste dans le sous-forum approprié.

    --
    Jedaï

Discussions similaires

  1. [ConText] Configuration des touches de compilation et exécution
    Par grungee dans le forum Autres IDE
    Réponses: 2
    Dernier message: 27/08/2006, 22h05
  2. Réponses: 4
    Dernier message: 31/03/2006, 10h52
  3. Compiler un programme perl pour palteforme Win32
    Par LE NEINDRE dans le forum Modules
    Réponses: 1
    Dernier message: 11/01/2006, 14h27
  4. compiler un script perl
    Par black_code dans le forum Langage
    Réponses: 9
    Dernier message: 03/09/2005, 16h30
  5. [langage] compiler un prog perl
    Par mike21 dans le forum Langage
    Réponses: 20
    Dernier message: 23/11/2004, 17h57

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