2012-01-26 13 views
5

osxに最新のhappstack-serverをインストールしようとしています。彼らはちょうどlibcryptoppに依存関係を追加しました。私はそれを動作させることはできません。だから、osxにhappstack-server 6.5.3をインストールする - libcryptoppがありません

~$ cabal install happstack-server 
Resolving dependencies... 
Configuring happstack-server-6.5.3... 
cabal: Missing dependency on a foreign library: 
* Missing C library: cryptopp 
This problem can usually be solved by installing the system package that 
provides this library (you may need the "-dev" version). If the library is 
already installed but in a non-standard location then you can use the flags 
--extra-include-dirs= and --extra-lib-dirs= to specify where it is. 
cabal: Error: some packages failed to install: 
happstack-server-6.5.3 failed during the configure step. The exception was: 
ExitFailure 1 

、その後私は

sudo port install libcryptopp 

のlib /ローカルの/ opt /にlibcryptopp.aを入れた後、私は--extra-LIB-dirsに再びhappstack-サーバーをインストールし、MacPortsのでlibcryptoppをインストール

cabal install happstack-server --extra-lib-dirs=/opt/local/lib 

それは罰金インストールし、すべてのものは、私が実際に実行 happstackサーバーまで動作しているようです。

私は間違っていますか?それとも、これは砂嵐のバグですか?私はmacports経由でlibをインストールした後も.dylibを持っていないだけで、.aだけです。強引なアプローチとしてghc --make Hello.hsis even crazier

+0

エラーがおそらくある 'Hello.hs'間違った 'iconv'ライブラリが原因です。私はどちらが忘れていますが、システム1がHaskellで動作しないと思うので、macports 'iconv'をインストールする必要があります。または、他の方法ラウンド。 Macはパッケージや場所をインストールする方法が非常に多いため、ちょっと混乱している。しかし、あなたがそれを理解したら、それはうまくいくと聞きます。 –

答えて

2

、あなたはhappstack-serverの.cabalファイル内のhttpsフラグを無効にすることができます

ファイル:happstack-server.cabal

Flag https 
    Default: False 

のconfigure /ビルド/手動でhappstack-serverをインストールしてください。cabal install happstackです。


(!私はArchlinuxを使用し、--extra-LIB-dirsにも、動作しません)

+0

注:私は実際にこれを試していないが、私はそれが動作すると仮定します。私は代わりにアプリケーションサーバーを切り替えました:) –

+0

@Sean Clark Hess:あなたは書いてあります。私は 'happstack-server' 6.4。*を試しました。 :) – Nybble

7

方法について:

g++ -fpic -nostartfiles -nostdlib -shared /usr/local/Cellar/cryptopp/5.6.1/lib/libcryptopp.a -o libcryptopp.dylib

+0

ありがとう!これは、cryptoppの問題を直接解決するよりもはるかに優れています。 –

関連する問題