2013-05-20 35 views
5

Sto provando a dare a HsOpenSSL un vortice su Mac OS X, e sta esplodendo in faccia.HsOpenSSL segfaults su OS X

L'ultima versione Hackage (HsOpenSSL-0.10.3.3) costruisce e le importazioni, ma di fare qualsiasi cosa con esso uccide la mia GHCi (sia 7.6.3 e 7.4.2):

ghci> import OpenSSL 
ghci> withOpenSSL $ do undefined 
$ # Now I'm looking at a shell prompt 

ho messo insieme un eseguibile e costruito con GHC, e voilà, un segfault:

$ ./test 
Segmentation fault: 11 

sto utilizzando la versione di OpenSSL che viene fornito con OS X 10.8:

$ openssl version 
OpenSSL 0.9.8r 8 Feb 2011 

(Ho anche installato l'ultima versione di OpenSSL, v1.0.1e, e ho creato HsOpenSSL contro di esso. Di nuovo costruisce e importa bene, ma segfaults su qualsiasi chiamata a OpenSSL.)

Questo è probabilmente un problema con OpenSSL, o con qualche idiosincrasia di usare OS X piuttosto che Linux, ma la mia installazione funziona bene con OpenSSL di Python biblioteca. ...

Qualcuno può replicare questo o darmi qualche consiglio di debug?

+1

E quali versioni di HsOpenSSL e ghc state usando? –

+1

Questo funziona bene per me. OpenSSL 1.0.1e, HsOpenSSL-0.10.3.3, ghc 7.6.3 x86-64 su Linux. –

+0

@ Thomas M. DuBuisson, grazie per il controllo. Questo è quello che mi sarei aspettato; il problema è probabilmente qualcosa a che fare con OS X. – pash

risposta

2

Ho paura di avere un altro rapporto negativo - funziona qui per me, su OS X. Ipoteticamente, potrei usare una versione a cui non potrei essere permesso di menzionare, quindi questa potrebbe essere la differenza. ..

module Main (main) where 

import OpenSSL 


main :: IO() 
main = withOpenSSL $ do 
    putStrLn "Hm." 

allora posso eseguirlo con:

$ ghc Crash.hs 
... [it compiles] ... 
$ ./Crash 
Hm. 

e riesce. Utilizzo GHC 7.6.3, HsOpenSSL 0.10.3.3 e OpenSSL 0.9.8y, quest'ultimo in data 5 feb 2013.