2011-05-11 36 views
0

UPDATE解決GHC編譯錯誤,但runghc工作

我更新哈斯克爾平臺2011.2.0.1和GHC 7.0.3,現在,它的作品!

我有以下名爲「webscrap2.hs」的haskell文件。我可以執行「runghc webscrap2.hs」,它工作正常。但是,當我編譯文件時,我得到一個錯誤。

webscrap2.hs

import Text.HTML.TagSoup 
import Network.Curl (curlGetString, URLString) 

main :: IO() 
main = do html <- openURL "https://github.com/languages/Haskell/created" 
      let links = linkify html 
      print links 

openURL :: URLString -> IO String 
openURL target = fmap snd $ curlGetString target [] 

linkify :: String -> [String] 
linkify l = [x | TagOpen "a" atts <- parseTags l, (_,x) <- atts] 

GHC --version

The Glorious Glasgow Haskell Compilation System, version 6.12.3 

GHC -o webscrap2 webscrap2.hs

webscrap2.o: In function `r17I_info': 
(.text+0x1fe): undefined reference to `tagsoupzm0zi12_TextziHTMLziTagSoupziParser_parseTags_closure' 
webscrap2.o: In function `r17I_info': 
(.text+0x204): undefined reference to `tagsoupzm0zi12_TextziStringLike_zdfStringLikeZMZN_closure' 
webscrap2.o: In function `s1eb_info': 
(.text+0x6fc): undefined reference to `curlzm1zi3zi7_NetworkziCurl_curlGetString_closure' 
webscrap2.o: In function `s1ed_info': 
(.text+0x927): undefined reference to `__stginit_curlzm1zi3zi7_NetworkziCurl_' 
webscrap2.o: In function `s1ed_info': 
(.text+0x933): undefined reference to `__stginit_tagsoupzm0zi12_TextziHTMLziTagSoup_' 
webscrap2.o: In function `r17I_srt': 
(.data+0x90): undefined reference to `tagsoupzm0zi12_TextziHTMLziTagSoupziParser_parseTags_closure' 
webscrap2.o: In function `r17I_srt': 
(.data+0x98): undefined reference to `tagsoupzm0zi12_TextziStringLike_zdfStringLikeZMZN_closure' 
webscrap2.o: In function `s1ed_srt': 
(.data+0xf8): undefined reference to `curlzm1zi3zi7_NetworkziCurl_curlGetString_closure' 
collect2: ld returned 1 exit status 

任何指針的問題可能是什麼?

+0

WORKSFORME上GHC 7.0.3 – 2011-05-11 02:30:29

+0

謝謝。我將嘗試切換到ghc7 – mrsteve 2011-05-11 02:43:08

+0

有沒有關於在Ubuntu 11.04上安裝GHC 7.0.3的指針? – mrsteve 2011-05-11 02:49:12

回答

0

你可能想嘗試更新你的GHC和你正在使用的包,看看是否有幫助。

+0

謝謝!你的第一個評論讓我走上了正軌。它適用於ghc 7.0.3(以及最新的haskel框架工作,當然還包括通常的「cabal update」和「cabal install tagsoup」) – mrsteve 2011-05-11 17:21:16

0

假設你已經運行cabal install tagsoup那麼它是--make一件小事:

ghc -o webscrap2 webscrap2.hs --make