[CentOS] Centos 4.4 Problems not i586 compatible

Sun Mar 25 02:55:46 UTC 2007
junk at realtechtalk.com <junk at realtechtalk.com>

Kevin K wrote:
>
> On Mar 24, 2007, at 9:05 PM, junk at realtechtalk.com wrote:
>
>> Karanbir Singh wrote:
>>> junk at realtechtalk.com wrote:
>>>> I promise not to top post anymore :)
>>>
>>> Excellent!
>>>
>>>> Do you know why the problem I'm describing could be happening?
>>>
>>> its all assumption at this stage since you've not really said what 
>>> breaks or how it does not work
>>>
>>>> All other packages I have are i386.
>>>> I've taken the binary from bash i386 and I did ldd
>>>> I copied all relevant files to the livecd but it only works on i686.
>>>
>>> What do you really mean by 'it only works with i686' - which part of 
>>> the livecd is failing ? how did you create this livecd ? what kernel 
>>> and glibc / init process are you using etc ?
>>>
>>> - KB
>>>
>>
>> Hi KB
>>
>> What I've done is taken a generic 2.6.18.3 Kernel and compiled with 
>> i386 support.
>> All I have on the livecd now since I started from scratch is a copy 
>> of the dev entries in centos.
>>
>> All the disc does is run init and load bash.  The init itself is a 
>> bash script which just tells /bin/bash to execute
>> I have all the .so files as mentioned in my previous e-mails copied 
>> to the relevant places.
>>
>> When I run the disc on any i686 machine it works but if I take it to 
>> an i586 it halts after the kernel loads.
>> There is no error message, I can type things but bash never actually 
>> executed (remember this disc works fine and loads bash like it should 
>> on an i686 machine).
>>
>> I am using Centos 4.4 Server CD, it comes standard with an i686 glibc 
>> installed but I downloaded glibc.i386                               
>> 2.3.4-2.25
>> and run "rpm -Uvh glibc-rpm.name --force" to install it over top of 
>> glibc.i686
>>
>> I hope that explains it.  The bottom line is the disc works on any 
>> i686 machine but not an i386.
>> I almost wonder if somehow some of the i386 glibc .so's are not i386 
>> as it claims?\\
>
> I've had problems in the past when trying to convert a RHEL 
> distribution to one that can run on lesser platforms, such as 486s or 
> Pentiums.  Glibcs are not the easiest thing to replace, since you are 
> normally trying to downgrade them on the fly, so you can't just remove 
> the old one to ensure it is gone, then install the new one.
>
> I've seen the /lib/i686 directory being left behind when trying an 
> upgrade like you listed above, so you may want to check that there 
> isn't the i686 version of the libs remaining along with the 386 
> version.  If so, it could be loading that instead, and failing on a 
> Pentium.
> _______________________________________________
> CentOS mailing list
> CentOS at centos.org
> http://lists.centos.org/mailman/listinfo/centos
>
Thanks Kevin.  I actually extracted the i386 glibc and did a diff 
(comparing the i386 files I extracted from the RPM to the ones that were 
actually installed) on all the glibc files I needed to use for bash and 
they all came back the same.
Just to be sure I copied the libc.so.6 i386 file into the tls/i686 
directory.

I feel strongly that the i386 glibc is not truly i386 unless I'm making 
a stupid mistake but I've been at this for a few days.
I even manually compiled bash using march & mtune i386 flags and it 
still wouldn't run.  It had different dependencies but I copied those 
too and again it runs on i686.

Does anyone know a simple way to build an i386 compatible cd?  I suspect 
my issue is that the i386 glibc is not really i386

Thanks again everyone!