1

実行可能ファイルを起動すると(cabalでビルドした後)、「アプリケーションが起動し、ポート3000でリッスンしています」と表示されます。次に、Webブラウザーで接続すると、コンソールに「WindowsではthreadWaitReadには-threadedが必要です。または、System.IO.hWaitForInputを使用してください」と表示されます。Webブラウザが接続することはありません。問題を解決するためにこれが実際に何を推奨しているのかわからない。

{-# LANGUAGE TypeFamilies, QuasiQuotes, MultiParamTypeClasses,
             TemplateHaskell, OverloadedStrings #-}
import Yesod

data HelloWorld = HelloWorld

mkYesod "HelloWorld" [parseRoutes|
/ HomeR GET
|]

instance Yesod HelloWorld

getHomeR :: Handler RepHtml
getHomeR = defaultLayout [whamlet|Hello World!|]

main :: IO ()
main = warpDebug 3000 HelloWorld
4

2 に答える 2

2

問題はおそらくここで紹介されています:http://hdiff.luite.com/cgit/warp/commit?id = 1.3.1.1

1.3.1バージョンのワープを使用するようにcabalを強制すると、期待どおりに機能するはずです。私の経験では、それでも-threadedとリンクする必要があります。

于 2012-10-11T15:33:40.820 に答える
1

実行可能ファイルをどのようにコンパイルしているかはわかりませんが、次の-threadedように問題を解決できるように聞こえます。

ghc --make hello-yesod.hs -threaded
hello-yesod.exe
于 2012-10-08T16:17:01.797 に答える