2012-05-16 18 views
8

Chcę rozpowszechniać aplikację wxHaskell na Mac OS X. Jak mogę utworzyć aplikację Mac OS X, która może być używana samodzielnie, bez konieczności instalowania dodatkowych bibliotek?Łączenie statyczne wxHaskell na Mac OS X

zauważyłem projekt cabal-macosx co sprawia .app wiązek dla Mac OS X. Kiedy zbudowano przykładową aplikację wxHello, aplikacja wiązka działało dobrze na moim komputerze (po dodaniu extra-lib-dirs: /usr/lib do pliku .cabal). Ale kiedy wypróbowałem to na innej maszynie, dostałem błąd: Dyld Error Message: Library not loaded: /Users/binil/.cabal/lib/wxc-0.90.0.3/ghc-7.0.4/libwxc.dylib.

Odpowiedz

3

Możesz umieścić wymagane dyliebs w folderze Contents/Resources w pakiecie aplikacji, ponieważ jest to część ścieżki wyszukiwania dla dylibs. Możesz zautomatyzować to za pomocą fazy kompilacji plików projektu.

Technicznie (chociaż to nie zawsze działa dla wszystkich dylibs), powinieneś być w stanie wyciągnąć go "poprawnie", konwertując dylib na framework, a następnie łącząc go z nim w swoim projekcie XCode. Istnieje a conversion script available [uwaga: pobierz].