Hi,<br><br>I can run the following program in the interpreter ghci but can&#39;t compile it.<br><br>The program I am trying to compile is a simple copy using the lazy
bytestrings. I have been working out exercises from Real World haskell
and I was benchmarking this version which is supposed to be optimum. <br>
<br>
,----<br>
| import qualified  System  as S<br>
| import qualified Data.ByteString.Lazy as L<br>
| <br>
| main = do <br>
|   [from, to ] &lt;- S.getArgs<br>
|   file &lt;- L.readFile from<br>
|   L.writeFile to file<br>
`----<br>
<br>While trying to compile this i get the following errors.<br><br><span class="gI">,----<br>| mitra@ravan:~/laptop/haskell/learn$ /opt/ghc-6.10.1/bin/ghc cp.hs<br>| cp.o: In function `sB1_info&#39;:<br>| (.text+0xab): undefined reference to `bytestringzm0zi9zi1zi4_DataziByteStringziLazzy_writeFile_closure&#39;<br>
| cp.o: In function `sAW_info&#39;:<br>| (.text+0xe1): undefined reference to `bytestringzm0zi9zi1zi4_DataziByteStringziLazzy_readFile_closure&#39;<br>| cp.o: In function `sB5_info&#39;:<br>| (.text+0x30f): undefined reference to `__stginit_bytestringzm0zi9zi1zi4_DataziByteStringziLazzy_&#39;<br>
| cp.o: In function `sB5_srt&#39;:<br>| (.data+0x4): undefined reference to `bytestringzm0zi9zi1zi4_DataziByteStringziLazzy_readFile_closure&#39;<br>| cp.o: In function `sB5_srt&#39;:<br>| (.data+0x8): undefined reference to `bytestringzm0zi9zi1zi4_DataziByteStringziLazzy_writeFile_closure&#39;<br>
| collect2: ld returned 1 exit status<br>| mitra@ravan:~/laptop/haskell/learn$  rm cp.o<br>| mitra@ravan:~/laptop/haskell/learn$ /opt/ghc-6.10.1/bin/ghc cp.hs<br>| cp.o: In function `sB0_info&#39;:<br>| (.text+0xab): undefined reference to `bytestringzm0zi9zi1zi4_DataziByteStringziLazzy_writeFile_closure&#39;<br>
| cp.o: In function `sAV_info&#39;:<br>`----<br></span><br>But this program is not syntactically or otherwise flawed since I can run it under ghci.<br><br>,----<br>| mitra@ravan:~/laptop/haskell/learn$ /opt/ghc-6.10.1/bin/ghci <br>
| GHCi, version 6.10.1: <a href="http://www.haskell.org/ghc/">http://www.haskell.org/ghc/</a>  :? for help<br>| Loading package ghc-prim ... linking ... done.<br>| Loading package integer ... linking ... done.<br>| Loading package base ... linking ... done.<br>
| Prelude&gt; :l cp.hs<br>| Ok, modules loaded: Main.<br>| Prelude Main&gt; :main /etc/passwd /tmp/xyz<br>| Loading package bytestring-0.9.1.4 ... linking ... done.<br>| Loading package unix-2.3.1.0 ... linking ... done.<br>
| Loading package filepath-1.1.0.1 ... linking ... done.<br>| Loading package old-locale-1.0.0.1 ... linking ... done.<br>| Loading package old-time-1.0.0.1 ... linking ... done.<br>| Loading package directory-1.0.0.2 ... linking ... done.<br>
| Loading package process-1.0.1.0 ... linking ... done.<br>| Loading package syb ... linking ... done.<br>| Loading package array-0.2.0.0 ... linking ... done.<br>| Loading package random-1.0.0.1 ... linking ... done.<br>
| Loading package haskell98 ... linking ... done.<br>| Prelude Main&gt;<br>`----<br><br>Since I suspect that this might be a problem with the way I have installed gch-6.10.1 I will explain how I have installed it.<br><br>
<br>