perl, gdbm and perl's obsequious help

Mike McCarty Mike.McCarty at sbcglobal.net
Thu Jun 3 10:31:27 PDT 2010


Neal Murphy wrote:
> On Thursday 03 June 2010 04:08:33 Simon Geard wrote:
>> Can you be more specific about the problems you're seeing? Does the perl
>> executable fail to run at all, unable to link to libgdbm.so? Or is it
>> something less obvious?
>>
>> Simon.
> 

[...]

> 
> That's when I dug into perl's configure script and eventually discovered that 
> LFS' standard two config options are not enough to adequately shield the 
> toolchain build from the host system. Given the scant documentation, you'd 

That's very interesting. Back in the past when I worked on a compiler
I helped develop, we often ran into places where we couldn't test a
"fix" unless we compiled, then compiled with the new object, then
compiled again, etc. IIRC, at one time it took four recompiles to
expunge the problem. I recall several times when we'd argue (there were
two of us on the dev team) about whether we had done it enough, because
it was so difficult to figure out exactly what wound up in the
executable.

> think '-Dstatic_ext='Data/Dumper Fcntl IO POSIX' would be enough. It isn't. 
> You also have to tell it to build ONLY those extensions, to look ONLY 
> in /tools/lib for libraries, and to look ONLY in /tools/include for headers. 
> (Alas, a year later, I don't remember why the inc_version_list is necessary.)
> 
> If you don't add these four options, perl's configure will spelunk through the 
> HOST's tree looking for features it should support. This behaviour is EXACTLY 
> what most people want when they build and install perl on their running 
> system. Alas, it is exactly what you do NOT want when building a bootstrap 
> toolchain.

Sounds like a difficult find, and an easy fix. Thanks for reporting
back. I wonder how it escapes the chroot environment. Ah, I see,
when the /tools/* stuff gets built, Perl puts it into there, and
then when building in the chroot, it's in /tools, so it puts it in, and
then there's a problem after reboot.

Mike
-- 
p="p=%c%s%c;main(){printf(p,34,p,34);}";main(){printf(p,34,p,34);}
Oppose globalization and One World Governments like the UN.
This message made from 100% recycled bits.
You have found the bank of Larn.
I speak only for myself, and I am unanimous in that!



More information about the lfs-support mailing list