2012-05-16 39 views
8

Desidero distribuire un'applicazione wxHaskell su Mac OS X. Come faccio a creare un'app Mac OS X che può essere utilizzata autonomamente senza che l'utente debba installare alcuna libreria aggiuntiva?Collegamento statico wxHaskell su Mac OS X

ho notato il progetto cabal-macosx che rende .app bundle per Mac OS X. Quando ho costruito l'esempio di applicazione wxHello, il bundle applicazione ha funzionato bene sulla mia macchina (dopo l'aggiunta extra-lib-dirs: /usr/lib al file .cabal). Ma quando ho provato su un'altra macchina, ho ricevuto l'errore: Dyld Error Message: Library not loaded: /Users/binil/.cabal/lib/wxc-0.90.0.3/ghc-7.0.4/libwxc.dylib.

risposta

3

È possibile posizionare i dylibs richiesti nella cartella Contents/Resources all'interno del pacchetto di app, poiché fa parte del percorso di ricerca di dylibs. Puoi automatizzarlo usando la fase di costruzione dei file di copia del progetto.

Tecnicamente (sebbene questo non funzioni sempre per tutti i dylibs), dovresti essere in grado di estrarlo "correttamente" convertendo il dylib in un Framework, quindi collegandolo nel progetto XCode. C'è a conversion script available [nota: download].