2014-03-12 5 views
2

내가 아치 리눅스 (3.12.9)에 음모를 통해 패키지를 설치하려고했으나이 오류를 얻었다 : 처음으로이 오류 메시지가 표시되면cryptopp 외국 라이브러리 의존성

Resolving dependencies... 
Configuring happstack-server-tls-7.1.0... 
Failed to install happstack-server-tls-7.1.0 
Last 10 lines of the build log (/home/boris/.cabal/logs/happstack-server-tls-7.1.0.log): 
Configuring happstack-server-tls-7.1.0... 
/bin/sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) 
setup-Cabal-1.16.0-x86_64-linux-ghc-7.6.3: 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-tls-7.1.0 failed during the configure step. The exception 
was: 
ExitFailure 1 

을, 나는 crypto++를 설치 한 팩맨을 통해. 그러나 그것은 나를 돕지 않았다. 아직 운이

$ whereis libcryptopp.a                       
libcryptopp: /usr/lib/libcryptopp.so 
$ cabal install happstack-server-tls --extra-include-dirs=/usr/lib/ --extra-lib-dirs=/usr/lib/ 

을하지만 :

난이 시도하지 않는다.

#include <iostream> 
using std::cout; 
using std::endl; 

#include "cryptopp/integer.h" 
using CryptoPP::Integer; 

int main(int, char**) { 

    Integer i; 

    cout << "i: " << i << endl; 

    return 0; 
} 

그리고 g++ -g3 -ggdb -O0 -Wall -Wextra -Wno-unused -o test test.cpp -lcryptopp -pthread Test.cpp에와

잘 컴파일이 Test.cpp에 파일로 암호화 ++ lib 디렉토리 일 경우

나는 체크.

은 그 때 나는 다시 여전히 운이

$ cd /usr/lib 
$ g++ -fpic -nostartfiles -nostdlib -shared libcryptopp.so -o libcryptopp.dylib 

에 시도하지 그러나.

누군가이 문제에 직면 했습니까? 어떤 해결책이 있습니까?

답변

2

run cabal unpack happstack-server-tls 로컬 디렉토리에서 소스 코드를 가져오고 압축을 풉니 다. 그런 다음 happstack-server-tls.cabal을 수정하고 다음 줄을 제거하십시오.

if !os(darwin) 
    Extra-Libraries: cryptopp 
+0

고맙습니다. 그것은 나를 도왔다. 그런데 왜 그런 일이 일어 났습니까? – d12frosted

+0

나는 정말로 모른다. 뭔가 복잡한 링크 및 서식 파일 haskell 및 오류 메시지와 관련된 생각? – stepcut