2014-10-24 7 views
5

Durante l'installazione di QuickCheck per Haskell GHC 7.8.3 su un sistema OS X Yosemite 10.10 (14A389) in esecuzione su un Mac Pro 2013 con Xcode 6.1 (6A1052d), sto correndo nella seguente errore clang:Errore di clang durante l'installazione di QuickCheck per GHC 7.8.3 su OS X Yosemite 10.10 (14A389)

$ cabal install QuickCheck 
Resolving dependencies... 
Configuring primitive-0.5.4.0... 
Building primitive-0.5.4.0... 
Preprocessing library primitive-0.5.4.0... 
[ 1 of 10] Compiling Data.Primitive.Internal.Compat (Data/Primitive/Internal/Compat.hs, dist/build/Data/Primitive/Internal/Compat.o) 
[ 2 of 10] Compiling Data.Primitive.MachDeps (Data/Primitive/MachDeps.hs, dist/build/Data/Primitive/MachDeps.o) 
[ 3 of 10] Compiling Data.Primitive.Internal.Operations (Data/Primitive/Internal/Operations.hs, dist/build/Data/Primitive/Internal/Operations.o) 
[ 4 of 10] Compiling Control.Monad.Primitive (Control/Monad/Primitive.hs, dist/build/Control/Monad/Primitive.o) 
[ 5 of 10] Compiling Data.Primitive.Types (Data/Primitive/Types.hs, dist/build/Data/Primitive/Types.o) 
[ 6 of 10] Compiling Data.Primitive.Array (Data/Primitive/Array.hs, dist/build/Data/Primitive/Array.o) 

Data/Primitive/Array.hs:32:1: Warning: 
    The import of ‘Control.Monad.ST’ is redundant 
     except perhaps to import instances from ‘Control.Monad.ST’ 
    To import instances alone, use: import Control.Monad.ST() 
[ 7 of 10] Compiling Data.Primitive.ByteArray (Data/Primitive/ByteArray.hs, dist/build/Data/Primitive/ByteArray.o) 
[ 8 of 10] Compiling Data.Primitive.Addr (Data/Primitive/Addr.hs, dist/build/Data/Primitive/Addr.o) 
[ 9 of 10] Compiling Data.Primitive (Data/Primitive.hs, dist/build/Data/Primitive.o) 
[10 of 10] Compiling Data.Primitive.MutVar (Data/Primitive/MutVar.hs, dist/build/Data/Primitive/MutVar.o) 
ld: library not found for -lgmp 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
Failed to install primitive-0.5.4.0 
Configuring random-1.1... 
Building random-1.1... 
Preprocessing library random-1.1... 
[1 of 1] Compiling System.Random (System/Random.hs, dist/build/System/Random.o) 
ld: library not found for -lgmp 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
Failed to install random-1.1 
cabal: Error: some packages failed to install: 
QuickCheck-2.7.6 depends on random-1.1 which failed to install. 
primitive-0.5.4.0 failed during the building phase. The exception was: 
ExitFailure 1 
random-1.1 failed during the building phase. The exception was: 
ExitFailure 1 
tf-random-0.5 depends on random-1.1 which failed to install. 

sembra che la libreria dinamica gmp manca. Qualcuno ha trovato una soluzione a questo problema?

+0

Lo stesso qui. Ho appena ricevuto lo Yosemite ieri. Quando imparerò a non adottare in anticipo gli aggiornamenti di OS X. –

+5

Prova: 'xcode-select --install' –

+0

Assolutamente, era così. Grazie a @MichaelFox, mi sono completamente dimenticato dell'installazione dello strumento da riga di comando. Si prega di inviarlo come risposta. –

risposta

1

Come ha detto @MichealFox nel suo commento, l'installazione di strumenti da riga di comando risolve questo problema.

xcode-select --install 

Si risolve anche problemi con molti altri cabal pacchetti a seconda gmp/lgmp biblioteca.

0

Ho avuto lo stesso problema (nel mio caso la compilazione di pandoc su una macchina Centos 7).

L'RPM gmp è stato installato ma non l'RPM gmp-devel (che contiene intestazioni, librerie collegabili, ecc.). Questo lo ha risolto:

yum install gmp-devel