I think that butterfly effect piece pretty much exactly described my problems with trying to install yesod and warp. <br>Installing one would uninstall the other. <br>
<br><br><div class="gmail_quote">On Thu, Mar 24, 2011 at 12:56 PM, Thomas Hartman <span dir="ltr">&lt;<a href="mailto:thomashartman1@googlemail.com">thomashartman1@googlemail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
I&#39;m not sure but my guess is these problems are caused by underlying<br>
problem in cabal. See<br>
<br>
<a href="http://cdsmith.wordpress.com/2011/01/21/a-recap-about-cabal-and-haskell-libraries/" target="_blank">http://cdsmith.wordpress.com/2011/01/21/a-recap-about-cabal-and-haskell-libraries/</a><br>
<a href="http://cdsmith.wordpress.com/2011/01/17/the-butterfly-effect-in-cabal/" target="_blank">http://cdsmith.wordpress.com/2011/01/17/the-butterfly-effect-in-cabal/</a><br>
<div><div></div><div class="h5"><br>
On Thu, Mar 24, 2011 at 9:50 AM, Rick Richardson<br>
&lt;<a href="mailto:rick.richardson@gmail.com">rick.richardson@gmail.com</a>&gt; wrote:<br>
&gt; Thanks. So what exactly is the real issue?  Is something requiring multiple<br>
&gt; versions of Network as indicated above, or is it a more &#39;permanent&#39; problem?<br>
&gt;<br>
&gt;<br>
&gt; On Thu, Mar 24, 2011 at 2:54 AM, Michael Snoyman &lt;<a href="mailto:michael@snoyman.com">michael@snoyman.com</a>&gt;<br>
&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; What Blake suggests in the right solution, except for two points<br>
&gt;&gt; (which are beyond his control):<br>
&gt;&gt;<br>
&gt;&gt; * It&#39;s a bit unfair to make users remember to install yesod with<br>
&gt;&gt; -fproduction.<br>
&gt;&gt; * wai-handler-devel does not handle Hamlet dependency tracking. That<br>
&gt;&gt; means that if you use Blake&#39;s suggestion and then modify your Hamlet<br>
&gt;&gt; templates, your code will not be reloaded.<br>
&gt;&gt;<br>
&gt;&gt; So I&#39;ve released new versions of wai-handler-devel (0.2.1) and yesod<br>
&gt;&gt; (0.7.2). There&#39;s no such thing as the -fproduction flag to yesod: it<br>
&gt;&gt; will never build against wai-handler-devel. When you call the<br>
&gt;&gt; develServer function, it will simply print out a message apologizing<br>
&gt;&gt; that it cannot fulfill your request, and will tell you to install<br>
&gt;&gt; wai-handler-devel &gt;= 0.2.1 and run a command such as:<br>
&gt;&gt;<br>
&gt;&gt;   wai-handler-devel 3000 Controller withTest --yesod<br>
&gt;&gt;<br>
&gt;&gt; Notice that extra --yesod at the end? That&#39;s the new feature in 0.2.1.<br>
&gt;&gt; I moved the Hamlet dependency checking code from yesod to<br>
&gt;&gt; wai-handler-devel. So now, if you run your application this way,<br>
&gt;&gt; Hamlet changes will automatically result in a reload of your code.<br>
&gt;&gt;<br>
&gt;&gt; I tried to set up the develServer function to automatically run<br>
&gt;&gt; wai-handler-server, but it resulted in the same error messages from<br>
&gt;&gt; GHC. Oh well. I image in future versions of the scaffolding tool, the<br>
&gt;&gt; devel-server.hs function will do all this for you automatically.<br>
&gt;&gt;<br>
&gt;&gt; Please let me know if this new approach causes any issues.<br>
&gt;&gt;<br>
&gt;&gt; Michael<br>
&gt;&gt;<br>
&gt;&gt; On Thu, Mar 24, 2011 at 1:00 AM, Blake Rain &lt;<a href="mailto:blake.rain@gmail.com">blake.rain@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; I too had a the same problem with duplicate symbols from libHSghc, and<br>
&gt;&gt; &gt; it seems to be a problem with yesod&#39;s dynamic server (or perhaps with<br>
&gt;&gt; &gt; Hint).<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; My solution was first to remove the dependency on wai-handler-devel in<br>
&gt;&gt; &gt; the yesod package by using the &#39;production&#39; flag, like so:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; $ cabal install yesod -fproduction<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; For running a dynamic server, the wai-handler-devel package installs an<br>
&gt;&gt; &gt; executable called wai-handler-devel. You can use this rather than the<br>
&gt;&gt; &gt; &quot;runhaskell devel-server.hs&quot; by providing the port, module and function<br>
&gt;&gt; &gt; from your &quot;devel-server.hs&quot; file as arguments:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; $ wai-handler-devel 3000 MySiteModule withMySite<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; The dynamic recompilation of wai-handler-devel is very useful, and I<br>
&gt;&gt; &gt; hope this helps.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Wed, 2011-03-23 at 14:22 -0400, Rick Richardson wrote:<br>
&gt;&gt; &gt;&gt; I removed all but network-2.2.1.0 and rebuilt everything, still no<br>
&gt;&gt; &gt;&gt; luck. But I&#39;m sure you have set me on the right track, I will<br>
&gt;&gt; &gt;&gt; experiment with other permutations.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Thanks.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; On Wed, Mar 23, 2011 at 1:27 PM, Anton Cheshkov &lt;<a href="mailto:acheshkov@gmail.com">acheshkov@gmail.com</a>&gt;<br>
&gt;&gt; &gt;&gt; wrote:<br>
&gt;&gt; &gt;&gt;         Hi Rick! I got the the same error day ago on my server.<br>
&gt;&gt; &gt;&gt;         Probably it happens because you have two network packages in<br>
&gt;&gt; &gt;&gt;         you system.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;         Try to compile all your packages  only on  network-2.2.1.10,<br>
&gt;&gt; &gt;&gt;         and delete package network-2.3<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;         Hope it helps you<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;         2011/3/23 Rick Richardson &lt;<a href="mailto:rick.richardson@gmail.com">rick.richardson@gmail.com</a>&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;                 I just installed the generic 7.0.2 binary on Ubuntu<br>
&gt;&gt; &gt;&gt;                  on both 32 bit and 64 bit machines.  Then I rm&#39;d<br>
&gt;&gt; &gt;&gt;                   .ghc and .cabal  then fetched the current haskell<br>
&gt;&gt; &gt;&gt;                 platform. Built and installed.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;                 After cabal installing all of the dependencies cabal<br>
&gt;&gt; &gt;&gt;                 said were required for yesod,  I run yesod.. the<br>
&gt;&gt; &gt;&gt;                 script creates the project.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;                 When executing runhaskell devel-server.hs  I get this<br>
&gt;&gt; &gt;&gt;                 message<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;                 GHCi runtime linker: fatal error: I found a duplicate<br>
&gt;&gt; &gt;&gt;                 definition for symbol<br>
&gt;&gt; &gt;&gt;                    ghczm7zi0zi2_AsmCodeGen_zdfMonadCmmOptM2_closure<br>
&gt;&gt; &gt;&gt;                 whilst processing object file<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;                  /usr/local/lib/ghc-7.0.2/ghc-7.0.2/libHSghc-7.0.2.a<br>
&gt;&gt; &gt;&gt;                 This could be caused by:<br>
&gt;&gt; &gt;&gt;                    * Loading two different object files which export<br>
&gt;&gt; &gt;&gt;                 the same symbol<br>
&gt;&gt; &gt;&gt;                    * Specifying the same object file twice on the GHCi<br>
&gt;&gt; &gt;&gt;                 command line<br>
&gt;&gt; &gt;&gt;                    * An incorrect `package.conf&#39; entry, causing some<br>
&gt;&gt; &gt;&gt;                 object to be<br>
&gt;&gt; &gt;&gt;                      loaded twice.<br>
&gt;&gt; &gt;&gt;                 GHCi cannot safely continue in this situation.<br>
&gt;&gt; &gt;&gt;                  Exiting now.  Sorry.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;                 it&#39;s the same on both 32 and 64 bit.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;                 Any ideas?   I am going to try to build 7.0.2 from<br>
&gt;&gt; &gt;&gt;                 source to see if that fixes it.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;                 _______________________________________________<br>
&gt;&gt; &gt;&gt;                 web-devel mailing list<br>
&gt;&gt; &gt;&gt;                 <a href="mailto:web-devel@haskell.org">web-devel@haskell.org</a><br>
&gt;&gt; &gt;&gt;                 <a href="http://www.haskell.org/mailman/listinfo/web-devel" target="_blank">http://www.haskell.org/mailman/listinfo/web-devel</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;         --<br>
&gt;&gt; &gt;&gt;         Best regards,<br>
&gt;&gt; &gt;&gt;         Cheshkov Anton<br>
&gt;&gt; &gt;&gt;         Phone: <a href="tel:%2B7%20909%20005%2018%2082">+7 909 005 18 82</a><br>
&gt;&gt; &gt;&gt;         Skype: cheshkov_anton<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; _______________________________________________<br>
&gt;&gt; &gt;&gt; web-devel mailing list<br>
&gt;&gt; &gt;&gt; <a href="mailto:web-devel@haskell.org">web-devel@haskell.org</a><br>
&gt;&gt; &gt;&gt; <a href="http://www.haskell.org/mailman/listinfo/web-devel" target="_blank">http://www.haskell.org/mailman/listinfo/web-devel</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt; web-devel mailing list<br>
&gt;&gt; &gt; <a href="mailto:web-devel@haskell.org">web-devel@haskell.org</a><br>
&gt;&gt; &gt; <a href="http://www.haskell.org/mailman/listinfo/web-devel" target="_blank">http://www.haskell.org/mailman/listinfo/web-devel</a><br>
&gt;&gt; &gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; web-devel mailing list<br>
&gt; <a href="mailto:web-devel@haskell.org">web-devel@haskell.org</a><br>
&gt; <a href="http://www.haskell.org/mailman/listinfo/web-devel" target="_blank">http://www.haskell.org/mailman/listinfo/web-devel</a><br>
&gt;<br>
&gt;<br>
</div></div></blockquote></div><br>