2013-09-04 11 views
6

Sto tentando di installare il linguaggio Idris in un OSX Lion utilizzando la guida di installazione fornita su official tutorial. Ho alraedy installato GMP. Questo è l'errore che ottengo:Cabal non riesce ad installare il linguaggio Idris su OSX Lion

$ cabal install idris 
Resolving dependencies... 
Configuring libffi-0.1... 
cabal: The pkg-config package libffi is required but it could not be found. 
[1 of 1] Compiling Main    (/var/folders/f0/dlx6tl5x18z4k4_vq0fkqtb80000gn/T/llvm-general-3.3.5.0-61662/llvm-general-3.3.5.0/Setup.hs, /var/folders/f0/dlx6tl5x18z4k4_vq0fkqtb80000gn/T/llvm-general-3.3.5.0-61662/llvm-general-3.3.5.0/dist/setup/Main.o) 
Linking /var/folders/f0/dlx6tl5x18z4k4_vq0fkqtb80000gn/T/llvm-general-3.3.5.0-61662/llvm-general-3.3.5.0/dist/setup/setup ... 
setup: The program llvm-config version ==3.3.* is required but it could not be 
found. 
cabal: Error: some packages failed to install: 
idris-0.9.9 depends on llvm-general-3.3.5.0 which failed to install. 
libffi-0.1 failed during the configure step. The exception was: 
ExitFailure 1 
llvm-general-3.3.5.0 failed during the configure step. The exception was: 
ExitFailure 1 

per l'installazione Idris senza LLVM produce questo errore:

$ cabal install idris -f-LLVM 
Resolving dependencies... 
Configuring libffi-0.1... 
cabal: The pkg-config package libffi is required but it could not be found. 
cabal: Error: some packages failed to install: 
idris-0.9.9 depends on libffi-0.1 which failed to install. 
libffi-0.1 failed during the configure step. The exception was: 
ExitFailure 1 
+2

Sembra che sia necessario installare LLVM 3.3. Se lo hai già installato, assicurati che 'llvm-config' sia in PATH. –

+2

In alternativa, prova 'cabal install idris -f-LLVM' per costruire Idris senza il backend LLVM. –

+0

@MikhailGlushenkov llvm-config gira. Non sono sicuro di quale versione di LLVM ho. 'caban install idris -f-LLVM' funziona ma ora ho un altro problema. – MaiaVictor

risposta

3

Il primo errore indica è necessario installare i pacchetti di sviluppo LLVM della vostra distribuzione (non attraverso cabala) e il secondo indica che è necessario installare il pacchetto di sviluppo per la libreria libffi GCC. Quale distribuzione Linux stai usando? O sei su Windows/Mac?

+2

Ero su Mac. Per completare la risposta: sono riuscito a risolvere entrambi i problemi di dipendenza scaricandoli e compilandoli direttamente per sorgente: sembra che l'homebrew stia scaricando versioni precedenti. – MaiaVictor

5

Avevo lo stesso problema su OSX Mavericks. Per ottenere Idris da compilare, ho usato homebrew per installare gmp, quindi ho dovuto eseguire 'export PKG_CONFIG_PATH =/usr/local/Cellar/libffi/3.0.13/lib/pkgconfig', quindi 'cabal install idris -f-LLVM '. Ho avuto la punta a esportare la variabile PKG_CONFIG_PATH da questo sito:

https://groups.google.com/d/msg/idris-lang/gxcdvRIA2OI/NqKSd4zHkI4J

Mavericks già avevano libffi installato, e io non voglio installare una seconda copia dalla sorgente, che è ciò che il trucco PKG_CONFIG_PATH mi ha aiutato evitare. Fai "brew info libffi" per trovare il percorso corretto da esportare. Speriamo che qualcuno crei presto una formula homebrew per Idris ...

+0

Questo in realtà non è vero, hai installato una seconda copia di libffi, cioè in/usr/local/Cellar, non è semplicemente collegata in/usr/lib/'. Usando 'PKG_CONFIG_PATH' stai dicendo al processo di creazione di usare' pkgconfig' da libffi, che genererà dei flag che dicono al linker/compilatore di guardare in/usr/local/Cellar/... – wires

Problemi correlati