<div dir="ltr">Could you, perhaps, outline a little more of what you&#39;re trying to do? I&#39;m having a hard time seeing what exactly you&#39;re doing, and why you can&#39;t use the package provided by your distribution.<div>
<br></div><div>We&#39;d love to help you, but you&#39;re not being very clear with what your problem is.</div><div><br clear="all">/jve<br>
<br><br><div class="gmail_quote">On Tue, Oct 14, 2008 at 9:25 PM, Magicloud <span dir="ltr">&lt;<a href="mailto:magicloud.magiclouds@gmail.com">magicloud.magiclouds@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Thank you for your reply.<br>
So the main information I got is that cabal is not safe. And my problems are all related to cabal, I think, dependency, ABI version....<br>
I hope everything could be better soon. At least, tools should not block the way of producing.<div><div></div><div class="Wj3C7c"><br>
<br>
Thomas Schilling wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
2008/10/14 Magicloud &lt;<a href="mailto:magicloud.magiclouds@gmail.com" target="_blank">magicloud.magiclouds@gmail.com</a>&gt;:<br>
 &nbsp;<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Sorry, let me say it this way:<br>
1. Ghc cannot be bootstrap-installed. And the ghc-6.8.3 binary from official<br>
website also cannot run in my box, some kind of overflow error. So I have to<br>
look for help, a few hours later, I found 6.4.2 (I am not sure) which runs<br>
well in my box, and install ghc-6.8.3 indirectly.<br>
 &nbsp; &nbsp;<br>
</blockquote>
<br>
Hm, the only issue with binary installers I had were old versions of<br>
some libraries which could be resolved by adding a few symlinks. &nbsp;What<br>
system are you on?<br>
<br>
 &nbsp;<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
2. After `cabal update &amp;&amp; cabal upgrade`, ghc-6.8.3 cannot be built.<br>
 &nbsp; &nbsp;<br>
</blockquote>
<br>
Which version of cabal-install ( cabal --version ) are you using?<br>
Note that &#39;cabal upgrade&#39; is not guaranteed to work since libraries on<br>
hackage don&#39;t always specify their dependencies correctly and older<br>
versions of cabal-install might have some issues. &nbsp;There&#39;s an ongoing<br>
initiative to have a set of more controlled packages, the Haskell<br>
Platform. &nbsp;It should soon has its first release.<br>
<br>
That said, you shouldn&#39;t need to upgrade anything if you want to build<br>
ghc 6.8.3 with <a href="http://6.4.2." target="_blank">6.4.2.</a> &nbsp;Also, what version of ghc does you distribution<br>
provide?<br>
<br>
 &nbsp;<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Lib<br>
Network.URI cannot be compiled because:<br>
Network/CGI/Protocol.hs:41:0:<br>
&nbsp;Failed to load interface for `Network.URI&#39;:<br>
 &nbsp; Perhaps you haven&#39;t installed the profiling libraries for package<br>
network-2.2.0.0?<br>
 &nbsp; Use -v to see a list of the files searched for.<br>
I remove this SUBDIRS from the Makefile, luckly, it works. A few more hours<br>
lost in my life.<br>
3. When I `ghc -v`, there are lots of &quot;hiding package xxx to avoid conflict<br>
with later version yyy&quot;, do I have a way to remove these hiding packages?<br>
And &quot;package xx will be ignored due to missing or recursive dependencies:<br>
yy&quot;, what does this mean? If it is ignored, my program using it compiled and<br>
run well. If the dependencies are not right, how can I fix it? I installed<br>
this by cabal. It reports nothing wrong and cannot check if all packages<br>
dependencies are OK.<br>
4. When `cabal upgrade`, I do not think it knows what it is doing. There<br>
were many times that I cannot upgrade because I should manually reinstall<br>
some packages to make it work (Some guy say that this is because ghc cannot<br>
know the difference between two lib files with the same name). And, cabal<br>
does not upgrade all packages, I do not know why.<br>
 &nbsp; &nbsp;<br>
</blockquote>
<br>
The issue is binary compatibility. &nbsp;At the moment, GHC cannot make<br>
sure that a library compiled with an older GHC can work with a newer<br>
GHC. &nbsp;GHC does many cross-module optimisations, and its runtime system<br>
changes occasionally, so it is very pessimistic in that regard. &nbsp;This<br>
becomes an issue for packages that GHC has been build with itself<br>
(like base, process, array), since these cannot be upgraded without<br>
recompiling GHC (hence requiring recompiling every other package).<br>
Older versions of cabal-install could not deal with this correctly.<br>
So in short, &quot;cabal upgrade&quot; (without arguments) is probably not very<br>
safe, atm.<br>
<br>
There are ongoing efforts to provide more ABI compatibility<br>
guarantees, but that requires solving of some difficult issues, so<br>
we&#39;re not there yet.<br>
<br>
There are certainly some things that could be improved. &nbsp;For example<br>
GHC 6.10 won&#39;t let you unregister a package that other packages depend<br>
on and it keeps checksums of the ABI which may be used by future<br>
versions of Cabal/cabal-install.<br>
<br>
 &nbsp;<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
5. Sometimes when I upgrade some libraries, ghc failed to compile, because<br>
ld failed to find the new libraries. (Which proves that ghc cannot deal with<br>
binary files right). I need to recompile this, and recompile that, MAYBE it<br>
would be resolved.<br>
 &nbsp; &nbsp;<br>
</blockquote>
<br>
Without further details I can just guess, but I think this is related<br>
to the problems with binary compatibility above.<br>
<br>
 &nbsp;<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Everyday, I spend a few hours on compiling. Does it really need to be so<br>
terrible? With erlang or ruby, I never spend more time debugging as<br>
haskell&#39;s feature says but less time on how to run my code.<br>
 &nbsp; &nbsp;<br>
</blockquote>
<br>
Many projects can just be loaded via ghci which is a lot faster. &nbsp;Just<br>
cd to the toplevel source directory, type :l ModuleName. &nbsp;Then edit<br>
the source code, and type :r to reload the current module.<br>
<br>
With many of these smaller issues you can often find quick help on<br>
Haskell&#39;s IRC channel #haskell or #ghc if you have problems specific<br>
to GHC (although asking at #haskell will often give you an answer more<br>
quickly, so ask there first anyway)<br>
<br>
HTH,<br>
<br>
&nbsp;Thomas<br>
<br>
<br>
 &nbsp;<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thomas Schilling wrote:<br>
 &nbsp; &nbsp;<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It would be helpful if you could describe exactly what you did so we<br>
can work on improving the issue in the long term (and help you fix it<br>
in the short term).<br>
<br>
2008/10/14 Magicloud &lt;<a href="mailto:magicloud.magiclouds@gmail.com" target="_blank">magicloud.magiclouds@gmail.com</a>&gt;:<br>
<br>
 &nbsp; &nbsp; &nbsp;<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
1. I cannot install ghc-6.8.3 in my box until I found the old runable<br>
binary.<br>
2. After I installed cabal, and upgraded, ghc-6.8.3 cannot rebuild<br>
itself.<br>
Because its libraries are conflict with the ones upgraded by cabal.<br>
3. Sometimes, ghc just ignore some libs, because it does not meet its<br>
dependencies. Well, ghc does not even tell me. It knows what I want?<br>
4. I use cabal, thinking it would make dependencies installation easier<br>
for<br>
me. Well it does not, once an error happened, nothing would work since. I<br>
cannot even remove the broken lib.<br>
5. No more needed. The above ones, which are important enough to drive me<br>
crazy.<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
<br>
<br>
 &nbsp; &nbsp; &nbsp; &nbsp;<br>
</blockquote>
 &nbsp; &nbsp; &nbsp;<br>
</blockquote>
 &nbsp; &nbsp;<br>
</blockquote>
<br>
 &nbsp;<br>
</blockquote>
<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
</div></div></blockquote></div><br></div></div>