Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 26

Discussione: Compilare Perl

  1. #11
    Ciao,

    allora ho fatto quello che chiedevi.

    ho compilato bbsmart.cgi con
    perlcc -o bbsmart bbsmart.cgi
    e ha prodotto un eseguibile da 2,9M
    con questi warning:

    codice:
    [shishii@marco compilare]$ perlcc -o bbsmart bbsmart.cgi
    pccpHQDZ.c:39934: warning: this decimal constant is unsigned only in ISO C90
    pccpHQDZ.c: In function `perl_init_aaac':
    pccpHQDZ.c:66065: warning: this decimal constant is unsigned only in ISO C90
    pccpHQDZ.c: In function `perl_init_aaaf':
    pccpHQDZ.c:96088: warning: this decimal constant is unsigned only in ISO C90
    [shishii@marco compilare]$
    poi ho creato il sorgente C tramite:
    perlcc -c bbsmart.cgi

    e ha creato un mostro da 5,4M che quando è stato passato a gcc ha prodotto circa 108000 errori !!! VVoVe:

    poi ho provato:

    perl -MO=C,-obbsmart.c bbsmart.cgi

    e ha creato un file sorgente C di 2,3M che però poi non compila.
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  2. #12
    non fa niente...quale credi sia la colpa del non funzionamento? forse bisogna levar equalche modulo caricato all'inizio? o bisogna levare il meccanismo dei goto...

  3. #13
    magari potresti provare con

    perl -MO=CC

  4. #14
    ho un pò modificato il mio file che ora è reperibile qui: (fai sempre il gioco del copia/incolla sull'indirizzo del browser)

    www.theartofweb.netfirms.com/bbsmart.cgi.zip
    www.theartofweb.altervista.com/bbsmart.cgi.zip

  5. #15
    Ciao,

    con
    perl -MO=CC,-obbsmart.c bbsmart.cgi

    mi da:

    [shishii@marco compilare]$ perl -MO=CC,-obbsmart.c bbsmart.cgi
    [Fri Aug 20 22:48:28 2004] bbsmart.cgi: main::GET_FORUM_INFO() called too early to check prototype at bbsmart.cgi line 127.
    [Fri Aug 20 22:48:28 2004] bbsmart.cgi: Can't locate object method "fake_ppaddr" via package "B::FAKEOP" at /usr/lib/perl5/5.8.1/i386-linux-thread-multi/B/C.pm line 365.
    [Fri Aug 20 22:48:28 2004] bbsmart.cgi: CHECK failed--call queue aborted.
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  6. #16
    uhm...secondo te che vuol dire? toeoricamente il mio script funziona senza problemi...lo testato infatti con:

    #!/perl -w

    use strict;
    use warnings;
    use diagnostics;

    ...

    senza parole

    Grazie cmq per il tempo che mi hai dedicato!

  7. #17
    mahhh... non mi stupisce il fatto che uno script perfettamente funzionante abbia dei problemi a compilare, io non ho molta esperienza nel settore, ma credo che appena uno script si fa un pò complesso con qualche modulo la compilazione sia un vero problema, e del resto Perl non è nato per questo.
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  8. #18
    forse le funzioni vanno dichiarate prima di chiamarle?

    cioè prima scrivo la sub e poi la chiamo? mi sembrerebbe proprio strano...o forse faccio prima a mettere tutte le sub in un package che poi chiamerò tramite use; e compilare solo il file .pm? che mi consigli?

  9. #19
    I give up!

  10. #20
    In perl non serve dichiarare prima le funzioni, mentre in C si. Comunque se vuoi trovare persone più esperte nel campo della compilazione ti consiglio di scrivere su it.comp.lang.perl.
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.