Questo è il comando c2hs che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre numerose workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online di Windows o emulatore online di MAC OS
PROGRAMMA:
NOME
c2hs - Generatore di interfaccia C->Haskell
SINOSSI
c2hs [VERSIONI] ... file di intestazione file di rilegatura
DESCRIZIONE
Questa pagina di manuale descrive brevemente il c2hs comando. Per maggiori dettagli, fare riferimento al principale
documentazione, disponibile in vari altri formati, tra cui SGML e HTML; vedere
qua sotto.
VERSIONI
I programmi seguono la consueta sintassi della riga di comando GNU, con opzioni lunghe che iniziano con due
trattini (`-'). Di seguito è riportato un riepilogo delle opzioni. Per una descrizione completa, vedere il
altra documentazione.
c2hs accetta le seguenti opzioni:
-H, -?, --Aiuto
breve aiuto
-in, --versione
mostra le informazioni sulla versione
--versione-numerica
mostra il numero di versione
-c CPP, --cpp=CPP
utilizzare eseguibile CPP per richiamare il preprocessore C
-C CPPOPTS, --cppopts=CPPOPTS
passare CPPOPTS al preprocessore C
-o RISORSE, --uscita=RISORSE
risultato di output a RISORSE (dovrebbe finire in hs)
-t PERCORSO, --dir-uscita=PERCORSO
posiziona i file generati in PATH
-p PIATTAFORMA, --platform=PIATTAFORMA
piattaforma da utilizzare per la compilazione incrociata
-K, --mantenere
mantieni l'intestazione C preelaborata
-l, --libreria di copia
copia il modulo della libreria `C2HS' nella directory corrente
-d GENERE, --dump=TIPO
scarica informazioni interne (per il debug), dove TYPE è uno dei seguenti:
· tracciare fasi del compilatore di traccia
· legame gen generazione di legami di traccia
· ctrav traccia la traversata della dichiarazione C
· CHS scarica il file di binding (aggiunge .scarico al nome)
file di intestazione è il file di intestazione appartenente alla libreria sottoposta a marshalling. Deve terminare con
suffisso .h.
file di rilegatura è il file di binding Haskell corrispondente, che deve terminare con il suffisso .chs.
PIATTAFORMA Il nome della piattaforma può essere uno dei seguenti: x86_64-linux. i686-linux. m68k-palmos. Questo
consente la compilazione incrociata, supponendo che il resto della tua toolchain la supporti.
l'impostazione predefinita è la piattaforma host corrente.
La più utile di queste opzioni è probabilmente --cppopts (o -C). Se il file di intestazione C
necessita di opzioni speciali (come -D o -I) per passare attraverso il pre-processore C, ecco il
posto dove passarli.
ESEMPI
Il modo più semplice per utilizzare il generatore di interfaccia C->Haskell è tramite Cabala. La Cabala ne è a conoscenza
.chs file e verranno eseguiti c2hs automaticamente, passando i flag appropriati.
Se utilizzato direttamente, c2hs è solitamente chiamato come:
c2hs lib.h Lib.chs
where lib.h è il file di intestazione e Lib.chs il modulo di binding Haskell, che definisce il C-
e l'interfaccia lato Haskell, rispettivamente. Se non si verificano errori, il risultato è un puro
Modulo Haskell Lib.hs, che implementa l'API Haskell della libreria.
Una chiamata più avanzata potrebbe apparire così:
c2hs --cppopts=-I/qualche/oscura/dir --cppopts=-DEXTRA lib.h Lib.chs
Spesso, lib.h non sarà nella directory corrente, ma in uno dei file di intestazione
directory. Oltre alla directory corrente, C->Haskell cerca in due posti per
intestazione: innanzitutto, nella directory include standard del sistema utilizzato, di solito è
/ usr / include e /usr/local/include; e in secondo luogo, cercherà in ogni directory che è
menzionato in un -IDIR opzione passata al pre-processore tramite --cppopts.
AVVERTENZE
Se hai più di un'opzione che vuoi dare al pre-processore, usane più di una
--cppopts= bandiere.
Utilizzare c2hs online utilizzando i servizi onworks.net