On Sat, Aug 22, 2009 at 17:48, Ryan Lynch <span dir="ltr">&lt;<a href="mailto:ryan.b.lynch@gmail.com">ryan.b.lynch@gmail.com</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<div><div></div><div class="h5">On Sat, Aug 22, 2009 at 16:55, Kevin J. Cummings <span dir="ltr">&lt;<a href="mailto:cummings@kjchome.homeip.net" target="_blank">cummings@kjchome.homeip.net</a>&gt;</span> wrote:<br></div>

</div><div class="gmail_quote"><div><div></div><div class="h5"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>On 08/22/2009 04:00 PM, Ryan Lynch wrote:<br>
&gt; On Sat, Aug 22, 2009 at 15:44, Kevin J. Cummings<br>
</div><div><div>&gt; &lt;<a href="mailto:cummings@kjchome.homeip.net" target="_blank">cummings@kjchome.homeip.net</a> &lt;mailto:<a href="mailto:cummings@kjchome.homeip.net" target="_blank">cummings@kjchome.homeip.net</a>&gt;&gt; wrote:<br>


&gt;<br>
&gt;     On 08/22/2009 03:39 PM, Geoffrey Leach wrote:<br>
&gt;     &gt; On 08/22/2009 12:24:08 PM, Kevin J. Cummings wrote:<br>
&gt;     &gt;&gt; On 08/22/2009 03:17 PM, Ryan Lynch wrote:<br>
&gt;     &gt;&gt;&gt; Running &#39;yum update&#39; from the command line, I am getting some file<br>
&gt;     &gt;&gt;&gt; conflicts between different arch/versions of the &#39;glibc&#39; and<br>
&gt;     &gt;&gt;&gt; &#39;glibc-common&#39; packages.  This machine runs F11-x86_64.<br>
&gt;     &gt;&gt;&gt;<br>
&gt;     &gt;&gt;&gt; Here&#39;s the actual error output:<br>
&gt;     &gt;&gt;&gt;<br>
&gt;     &gt;&gt;&gt; &lt;code&gt;<br>
&gt;     &gt;&gt;&gt; Transaction Check Error:<br>
&gt;     &gt;&gt;&gt;   file /usr/share/doc/glibc-2.10.1/NEWS from install of<br>
&gt;     &gt;&gt;&gt; glibc-2.10.1-4.i686 conflicts with file from package<br>
&gt;     &gt;&gt; glibc-2.10.1-2.x86_64<br>
&gt;     &gt;&gt;&gt;   file /usr/bin/ldd from install of glibc-common-2.10.1-4.i586<br>
&gt;     &gt;&gt; conflicts<br>
&gt;     &gt;&gt;&gt; with file from package glibc-common-2.10.1-2.x86_64<br>
&gt;     &gt;&gt;&gt;   file /usr/lib/locale/locale-archive.tmpl from install of<br>
&gt;     &gt;&gt;&gt; glibc-common-2.10.1-4.i586 conflicts with file from package<br>
&gt;     &gt;&gt;&gt; glibc-common-2.10.1-2.x86_64<br>
&gt;     &gt;&gt;&gt;   file /usr/share/doc/glibc-common-2.10.1/ChangeLog.bz2 from<br>
&gt;     &gt;&gt; install<br>
&gt;     &gt;&gt; of<br>
&gt;     &gt;&gt;&gt; glibc-common-2.10.1-4.i586 conflicts with file from package<br>
&gt;     &gt;&gt;&gt; glibc-common-2.10.1-2.x86_64<br>
&gt;     &gt;&gt;&gt;   file /usr/share/i18n/locales/de_AT from install of<br>
&gt;     &gt;&gt;&gt; glibc-common-2.10.1-4.i586 conflicts with file from package<br>
&gt;     &gt;&gt;&gt; glibc-common-2.10.1-2.x86_64<br>
&gt;     &gt;&gt;&gt; &lt;/code&gt;<br>
&gt;     &gt;&gt;&gt;<br>
&gt;     &gt;&gt;&gt; Is this a known issue, or did I screw something up?<br>
&gt;     &gt;&gt;<br>
&gt;     &gt;&gt; Something is screwed up.  Possibly on your system.  glibc-common.i586<br>
&gt;     &gt;&gt; is<br>
&gt;     &gt;&gt; conflicting with glibc-common.i686.  I think you need one and not the<br>
&gt;     &gt;&gt; other.  Since you system is a base x86_64, I would suggest trying the<br>
&gt;     &gt;&gt; following:<br>
&gt;     &gt;&gt;<br>
&gt;     &gt;&gt; # yum shell<br>
&gt;     &gt;&gt;&gt; remove glibc-common.i586<br>
&gt;     &gt;&gt;&gt; install glibc-common.i686<br>
&gt;     &gt;&gt;&gt; run<br>
&gt;     &gt;&gt;<br>
&gt;     &gt;&gt; and see if that helps....<br>
&gt;     &gt;<br>
&gt;     &gt; Hmmmm ... perhaps install glibc-common.x86_64? i686 is still 32 bit.<br>
&gt;<br>
&gt;     Not if its a multi-lib problem.  I assumed that the x86_64 part would<br>
&gt;     straighten itself out....  But yes, he needs to ensure that all of his<br>
&gt;     secondary libs are either all i586 or all i686 (where he has a choice<br>
&gt;     between the two) and that they co-exist well with their x86_64<br>
&gt;     counterparts (which should be the primary concern anyways).<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; Here&#39;s the output of `yum list installed glibc-common glibc`, for reference:<br>
&gt;<br>
&gt; &lt;code&gt;<br>
&gt; Installed Packages<br>
&gt; glibc.i686                      2.10.1-2                      installed<br>
&gt; glibc.x86_64                  2.10.1-2                      installed<br>
&gt; glibc-common.x86_64    2.10.1-2                      installed<br>
&gt; &lt;/code&gt;<br>
&gt;<br>
&gt; I tried `yum remove glibc.i686`, but it wants to remove 116 packages,<br>
&gt; for dependencies.  Mostly, it looks like stuff I installed while getting<br>
&gt; Skype for Linux to run, so I&#39;m pretty sure its going to break some<br>
&gt; things if I remove it all. <br></div></div></blockquote><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div><div>
</div></div>Ryan,<br>
        You are barking up the wrong tree.  Your problem is<br>
glibc-common.i586.  Something is trying to install this package and it<br>
conflicts with your currently installed glibc-common.i686.<br>
You need to track down where that dependency is coming from and deal<br>
with it.</blockquote></div></div><div><br><br>No, I&#39;m pretty sure that&#39;s the right tree :-)  I didn&#39;t post the whole output of &#39;yum update&#39;, though, so that&#39;s not your fault.  See below.<br>
<br> </div><div class="im"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div>
&gt; Isn&#39;t this a packaging bug?  There&#39;s no conflict between my<br>
&gt; currently-installed &#39;glibc.i686&#39; and &#39;glib.x86_64&#39; (2.10.1-2), although<br>
&gt; there is a conflict between the two archs&#39; &#39;glibc-common&#39; packages.<br>
<br>
</div><br>Possibly, but we need to know what is causing it first.  i586/i686 are<br>
not meant to be multilib (like x86_64/i686 is).</blockquote></div><div><br><br>I don&#39;t mean to be rude, but I think you have some misconceptions about how i686 and i586 work on Fedora, before we go any further:<br>
<br>
 * There is no glibc-common.i686 package.  It doesn&#39;t exist, either on
my system or anywhere in stable Fedora.  Go take a look at at the
repos, right now, and confirm that.  (There is such a package in
Rawhide, but that&#39;s not relevant, here.)<br>
<br>
 * Many source RPMs don&#39;t have an i686 binary package, at all.  Instead, they have an i586 or i386 package for 32-bit.  OpenSSH is like this (go check for yourself), and there are
others.  I don&#39;t exactly know why this is, but it&#39;s perfectly valid to have a mix of i586 and i686 packages on a Fedora system.<br>
<br> * glibc-2.10.1-4.i686 is the package causing YUM to pull in glibc-common.i586.  Here&#39;s the snippet from my original &#39;yum update&#39; command:<br><br>&lt;output&gt;<br>---&gt; Package glibc.i686 0:2.10.1-4 set to be updated                <br>


--&gt; Processing Dependency: glibc-common = 2.10.1-4 for package: glibc-2.10.1-4.i686<br>&lt;/output&gt;<br><br>
 * glibc-2.10.1-2.i686 depends on &#39;glibc-common = 2.10.1-2&#39;, but it apparently tolerates either the i586 OR the x86_64 version of &#39;glibc-common&#39;.  The 2.10.1-4.i686 update, however, changed its dependencies:  It only accepts the i586 arch of &#39;glibc-common&#39;.  You can confirm this by comparing:<br>


<br>    - `yum deplist glibc-2.10.1-2.i686 | grep glibc-common`:<br>&lt;output&gt;<br>  dependency: glibc-common = 2.10.1-2<br>   provider: glibc-common.x86_64 2.10.1-2<br>   provider: glibc-common.i586 2.10.1-2<br>  dependency: glibc-common = 2.10.1-2<br>


   provider: glibc-common.x86_64 2.10.1-2<br>   provider: glibc-common.i586 2.10.1-2<br>&lt;/output&gt;<br><br>against:<br><br>    - `yum deplist glibc-2.10.1-4.i686 | grep glibc-common`:<br>&lt;output&gt;<br>  dependency: glibc-common = 2.10.1-4<br>


   provider: glibc-common.i586 2.10.1-4<br>&lt;/output&gt;<br>
<br>IN SHORT:  The package &#39;glibc.i686&#39; changes its dependencies from the -2 release to -4.  Previously, my &#39;glibc-common.x86_64&#39; was sufficient to satisfy &#39;glibc.i686&#39;, whereas now, it *must* have &#39;glibc-common.i586&#39;.<br>


<br>All that make sense?  I think at this point, I need to find out why that change happened, and whether there&#39;s anything to be done about it upstream.<br><br>-Ryan<br></div></div>
</blockquote></div><br><br>Slap my forehead, will ya?  There was no change in the &#39;glibc.i686&#39; package, that&#39;s not what &#39;yum deplist&#39; was telling me.  The problem was that YUM can&#39;t see the update for glibc-common-2.10.1-4.x86_64, so it THINKS the only package that will satisfy the dependency is glibc-common-2.10.1-4.i586.  That, in turn, creates the conflict.<br>

<br>It looks like glibc is designed to allow both 64 and 32 bit versions to coexist in harmony, but not glibc-common.  Instead, it lets you use the 64-bit glibc-common package to satisfy any 32-bit package deps you might have.<br>

<br>So, why can&#39;t YUM see the updated glibc-common.x86_64 package?  Because my repo mirror is out of date!  (DUH!)<br><br>-Ryan<br><br>