[lfs-support] Glibc test error - Generating locale de_DE.ISO-8859-1

Nathan Bibb nathanbibb at gmail.com
Sat Apr 16 11:58:16 PDT 2016


On Apr 16, 2016 8:42 AM, "Alz" <alz at phyglos.org> wrote:
>
> Hi Nathan,
>
>
> On 04/15/2016 12:00 AM, Nathan Bibb wrote:
>>
>>
>>
>> On Thu, Apr 14, 2016 at 12:49 PM, Nathan Bibb <nathanbibb at gmail.com
>> <mailto:nathanbibb at gmail.com>> wrote:
>>
>>     At this point I think I am a bit stuck.  I see my options as:
>>     1. Continue with the install and see what horrible mess I get into;
>>
>> I actually decided to see if 'make install' would do anything different,
>> and I got the exact same error there.
>>
>
> As I've understood, your compilation (configure and make) had no issues.
So you are having that error in 'make check'. This is not a test failure
(some failing tests are expected) but an error that aborts the command.
Right?
>
> And now you are getting "the same" error in 'make install'? That is, the
installation is aborted too?
>

Correct on all points.

>
>> I have confirmed that cacheinfo.c exists in the sysdeps/i386 folder, but
>> it only calls the version in the x86_64 folder - so no help there.
>>
>
> Code in x86_64 folder is also used for x86 builds. They are reusing code.
>
>
>> All of the articles online that bear any resemblance to this issue
>> involve valgrind - I know valgrind is not specifically installed in LFS,
>> but is it included in some test suite distributions?
>>
>
> I think Valgrind loads some libraries that confuses glibc in determining
the CPU type where it is built on, for some old types of CPU. Something
similar could be happening here for this old Pentimum MMX on a recent
glibc, not sure at all...
>
>
>> So...is it time for me to through in the towel?  I feel that I am
>> grasping at straws at this point.
>>
>>              > > `maxidx >=
>>              > > 2' failed.
>>              >
>
>
> For the sake of curiosity, this could be the failing code.
>
> === sysdeps/x86_64/cacheinfo.c ===
> static long int __attribute__ ((noinline))
> handle_intel (int name, unsigned int maxidx)
> {
>   assert (maxidx >= 2);
>
>   /* OK, we can use the CPUID instruction to get all info about the
>      caches.  */
> ===
>
> There is an assert in cacheinfo.c code for any guessed Intel CPU. Your
build seems to get here and fail.
>
> You can try a quick test. Before compiling glibc, modify the code to
prevent the assert to fail in your machine. Add a line in:
>
> === sysdeps/x86_64/cacheinfo.c ===
> static long int __attribute__ ((noinline))
> handle_intel (int name, unsigned int maxidx)
> {
>   assert (maxidx >= 2);
> ...
> ===
>
> something like this:
> ===
> static long int __attribute__ ((noinline))
> handle_intel (int name, unsigned int maxidx)
> {
>   if (maxidx < 2) return 0;
>   assert (maxidx >= 2);
> ...
> ===
>
> Dirty, but it can give some insight if it works.
>
> It is your own time that you'll bet on this build. If you are decided to
keep pushing forward, for such an specific machine I would probably set
CFLAGS/CXXFLAGS with "-march=pentium-mmx" from the very beginning. See Ch
6.4 for a hint if you haven't.
>
> Regards.
> Alz.
>

Thanks for the advice.  I will try out the code change and see what
happens.  I have done a little Python scripting, but I've never written
anything in C so hopefully I don't make things worse :)

If that gives no insight, I will check out how to set the CFLAGS correctly.

>
>
>
>
>
>
>
> --
> http://lists.linuxfromscratch.org/listinfo/lfs-support
> FAQ: http://www.linuxfromscratch.org/blfs/faq.html
> Unsubscribe: See the above information page
>
> Do not top post on this list.
>
> A: Because it messes up the order in which people normally read text.
> Q: Why is top-posting such a bad thing?
> A: Top-posting.
> Q: What is the most annoying thing in e-mail?
>
> http://en.wikipedia.org/wiki/Posting_style
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxfromscratch.org/pipermail/lfs-support/attachments/20160416/24eae0f7/attachment.html>


More information about the lfs-support mailing list