2011-05-11 62 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