Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Generare interprete PHP

    Ciao raga,
    avrei bisogno di una mano.
    Mi sto cimentando nella creazione di un interprete PHP per il progetto di un esame.
    Ho scaricato Flex e Bison, 2 tool che mi saranno utili per la creazione dell'applicazione.
    Innanzitutto ho bisogno della grammatica context-free del linguaggio in esame (il PHP) che ho preso scaricando il pacchetto ufficiale dal www.php.net/downloads.php.
    Il file di mio interesse si trova nella cartella Zend e si chiama zend_language_parser.y (questo dovrebbe definire la grammatica context-free, correggetemi se sbaglio).
    Dando in pasto a Bison questo file me ne vengono restituiti 2:
    zend_language_parser.tab.c
    zend_language_parser.tab.h

    Una volta fatto ciò ho preso il file zend_language_scanner.l presente sempre nella cartella Zend e l'ho dato in pasto a Flex.
    Grazie a quest'ultima operazione mi viene creato il file lex.yy.c
    A questo punto compilo i file lex.yy.c e zend_language_parser.tab.c (tramite gcc) in modo da ottenere l'interprete finale, cioè un file .exe (sono su Windows).
    Ciò però non avviene visto che mi vengono restituiti un bel pò di errori.
    Di seguito uno screenshot

    Dove sbaglio!?
    Grazie in anticipo
    Testata Giornalistica Online - InfoOggi.it
    IRC Resource - IRC-Zone.org

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    L'immagine non è ingrandibile.
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  3. #3
    Si scusatemi, vedi qui
    Testata Giornalistica Online - InfoOggi.it
    IRC Resource - IRC-Zone.org

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Così non serve ... bisogna che tu riporti i primi errori ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Non hai tutti i torti
    Ecco a te

    Ho ripetuto l'operazione utilizzando PHP 3.0b4 per semplicità, visto che ha file .y e .l decisamente più semplici.
    Testata Giornalistica Online - InfoOggi.it
    IRC Resource - IRC-Zone.org

  6. #6
    non potevi copia/incollare il testo dell'errore anziché postare l'immagine?

    Trascrivendo (salvo errori di digitazione) qui il comando ed il primo errore:
    codice:
    C:\Programmi\GnuWin32\bin\bin-gcc>gcc lex.yy.c
    lex.yy.c:11:19 no include path in witch to search for stdio.h
    se ne deduce che "gcc" non sa dove trovare il file "stdio.h" incluso da lex.yy.c. Glielo devi dire tu con le opportune direttive di compilazione o settando opportunamente il tuo environment.

  7. #7
    Guarda, io ho inserito nella cartella in cui sono presenti gli eseguibili bison e flex, tutti i file .h
    di cui necessitano i file che mi vengono generati, ma non ho soluzione, stessa tipologia di errori.
    Comunque utilizzando cmd.exe da Windows non ho modo di selezionare le righe di errore, nè vedere la parte iniziale dell'errore perchè lo scroll è limitato.
    C'è per caso un modo di visualizzare gli errori in maniera parziale, come su linux!?
    Testata Giornalistica Online - InfoOggi.it
    IRC Resource - IRC-Zone.org

  8. #8
    Vabbè raga io qui continuo a strippare come un matto, ma senza esito.
    Mi sa che faccio prima a farmi da me (e in maniera più semplice possibile) i due file .y e .l
    Qualche consiglio/suggerimento in merito!?
    Magari qualcosa di già fatto (e funzionante) per linguaggi simili al PHP da poter adattare?
    Testata Giornalistica Online - InfoOggi.it
    IRC Resource - IRC-Zone.org

  9. #9
    Originariamente inviato da Kaesar83
    ...
    Comunque utilizzando cmd.exe da Windows non ho modo di selezionare le righe di errore, nè vedere la parte iniziale dell'errore perchè lo scroll è limitato.
    C'è per caso un modo di visualizzare gli errori in maniera parziale, come su linux!?
    Certo che c'è, oltre alla possibilità di copia incollare l'output testuale prodotto, e ti consiglio di impararlo prima di qualunque altra cosa: è roba da smanettoni alle prime armi, non da programmatori (che sia assume siano di per sè ottimi smanettoni). In ogni modo per 'ste cose da smanettoni qui siamo OT.
    ;-)

  10. #10
    Vabbè sei ampiamente OT e son cose che neanche mi interessano, non mi reputo nè uno smanettone, nè un ottimo programmatore quindi posso anche ignorare certi aspetti.
    Per il momento voglio capire come cavolo generare questo interprete, il resto è noia.
    Testata Giornalistica Online - InfoOggi.it
    IRC Resource - IRC-Zone.org

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 © 2025 vBulletin Solutions, Inc. All rights reserved.