2014-11-30 12 views
3

나는 threepenny-gui를 설치하려고 시도했으며 그 과정에서 문제가 발생할 수 있습니다. 내 질문은 (1) 어떻게 해결할 수 있습니까? (2) 캐럴이 가능한 재설치에 대한 경고를 발행 할 때 어떻게해야합니까?음모로 threepenny-gui 설치 : 내가 뭘 잘못 했습니까?

펜스 - GUI는 정규식-의 compat 깰 수 있음을 나에게 경고 : 그 위험을 감수 할 가치 보였다 있도록

jeffreys-mbp:~ jbb$ cabal install threepenny-gui -fbuildExamples 

cabal: The following packages are likely to be broken by the reinstalls: 
regex-compat-0.95.1 
Use --force-reinstalls if you want to install anyway. 

가 아직 하스켈에서 정규 표현식을 사용하지 않은, 내가 진행 :

jeffreys-mbp:~ jbb$ cabal install threepenny-gui -fbuildExamples --force-reinstalls 

Warning: The following packages are likely to be broken by the reinstalls: 
regex-compat-0.95.1 

하지만, 그렇지 않은 듯 :이 경고를 준 과정을 시작

작업. 그럼 내가 성공하지 않고, 몇 가지 샘플 프로그램을 실행하려고 :

jefferys-mbp:samples jbb$ ./runhaskell Chat.hs 
ghc: can't find a package database at ../.cabal-sandbox/*-packages.conf.d 
jefferys-mbp:samples jbb$ ./runhaskell MissingDollars.hs 
ghc: can't find a package database at ../.cabal-sandbox/*-packages.conf.d 
jefferys-mbp:samples jbb$ 

은 그 오류를 봤 내가 사용하는 방법을 참조하지 않았다, only one page with it을 발견했다.

나는 문제가 내가 정규식-의 compat 어겼다이었다 어쩌면 생각했다, 그래서 나는 그것을 다시 설치 시도 :

jefferys-mbp:samples jbb$ cabal install regex-compat 
Resolving dependencies... 
All the requested packages are already installed: 
regex-compat-0.95.1 
Use --reinstall if you want to reinstall anyway. 
jefferys-mbp:samples jbb$ cabal install regex-compat --reinstall 
Resolving dependencies... 
In order, the following will be installed: 
regex-compat-0.95.1 (reinstall) 
Warning: Note that reinstalls are always dangerous. Continuing anyway... 
    ## It warned me that its suggestion is dangerous only AFTER I had acted on its suggestion. 
Downloading regex-compat-0.95.1... 
Configuring regex-compat-0.95.1... 
Building regex-compat-0.95.1... 
Installed regex-compat-0.95.1 
Updating documentation index /Users/jbb/Library/Haskell/share/doc/index.html 
jefferys-mbp:samples jbb$ 

내가 모르는 경우가 다시 설치 정규식-의 compat 여부,하지만 펜스의 샘플 -gui는 여전히 나를 위해 뛰지 않습니다.

저는 2011 년 MBP 초반에 OS X Mavericks를 사용하고 있습니다. threepenny 전에 wxWidgets와 GTK 설치를 시도했는데 두 가지 모두 성공한 것으로 보였지만 샘플 코드도 실행하지 못했습니다. 그것은 내가 다른 컴퓨터를 구입하고 리눅스로 전환하는 것을 고려하게 만든다. (이 컴퓨터에 리눅스를 설치하면 나도 회피하고있다.)

답변

1

빌드를이 레시피 샌드 박스에서 :

cabal sandbox init 
cabal install --only-dependencies 
cabal install 

실행이 .cabal - 샌드 박스에 상주 내장/빈

더 많은 정보에 Cabal 샌드 박스를 찾을 수 있습니다. here

문제는 OSX가 아닌 종속성의 얽힌 중첩과 관련이 있습니다.

2

threepenny-gui 패키지 (버전 0.5. * 작성 당시)를 -fbuildExamples 옵션과 함께 설치하면 해당 예제를 실행 파일로 사용할 수 있습니다. 예를 들어, 채팅 예는

$ threepenny-examples-chat 

또한 직접 samples/ 폴더에서 예제를 실행 수를 입력하여 실행 할 수 있지만,이 라이브러리 개발자의 편의를 더합니다. runhaskellghci 스크립트를 사용할 필요가 없습니다. 그들은 몇 가지 경로를 설정했지만 소스 트리의 루트 디렉토리에 종속 저장소를 설정하고 종속성을 설치했다고 가정합니다.

직접 작성했거나 다른 곳에서 복사 한 예제 코드는 완벽하게 실행되어야합니다.

+0

감사합니다, 하인리히! 나는 등록을 취소하고 "cabal install threepenny-gui -fbuildExamples regex-compat"을 사용하여 다시 설치했습니다. 그런 다음 예제를 발견했습니다.그들은 아무 것도하지 않는 것처럼 보입니다. Google 크롬은 계속 열려 있고 변경되지 않고 터미널에 텍스트가 표시되면^C를 발급 할 때까지 중단됩니다. http://127.0.0.1:8023/125.06.[30/Nov/2014 : 12:12:13 -0800] Server.httpServe : [http://127.0.0.1:8023/] ^ C [30/Nov/2014 : 12 : 12 : 36 -0800]에 바인딩하는 시작 Server.httpServe : 종료 [30/Nov/2014 : 12 : 12 : 36 -0800] Server.httpServe : BACKEND STOPPED 종료 중 ... –

+2

@ user916142 모든 것이 작동하는 것처럼 보입니다. 터미널에 "Listening on : 127.0.0.1:8023 ..."이라고 표시되면 브라우저에 주소 'http : //127.0.0.1 : 8023'을 입력하고 Enter 키를 눌러야합니다. 예제가 나타납니다. (Threepenny는 자동으로 브라우저를 열지 않으므로 추가 단계가 필요합니다.) –