Pure LFS Build
srm at netcomuk.co.uk
Wed Feb 26 15:08:37 PST 2003
On Wed, 2003-02-26 at 22:44, Steve Martin wrote:
> On Wed, 2003-02-26 at 15:57, Tushar Teredesai wrote:
> > Once the gcc spec file and the binutils ld LIB_PATH are changed, none of
> > the packages built after that should be able to find anything in
> > /usr/lib unless findutils explicitly adds -L/usr/lib to the flags.
> That's right. What happens is that configure finds the library and sets
> LIBS = -lintl in the Makefile. GCC compiles it and links it, remember
> that it only sets references to external libraries, they don't have to
> [steve at zebedee find]$ ldd find
> libintl.so.1 => not found
> libc.so.6 => /stage1/lib/libc.so.6 (0x40016000)
> /stage1/lib/ld-linux.so.2 => /stage1/lib/ld-linux.so.2
> and the same is true for every executable in the findutils-4.1 suite.
> I believe RedHat also include /lib/libintl.so.1, I recall some notion
> that it should be included for compatibility reasons. The same is
> probably true of any RedHat based distro.
> Granted if I had dejagnu installed the make check would find this ( I
> hope ;-). Guess that's my next step.
I should clarify that. At compile time all external references must be
satisfied which is done by searching through glibc and any other
specified libraries. Since glibc-3.2.2 incorporates libintl all such
references are satisfied and the compiler does not notice that libintl
does not exist. However, the -lintl flag sets a reference in the
compiled code which tells the linker to load libintl.so.1 at run time,
it can't so the program fails to run.
Like I said, this is a heads up, especially if this hint is going to be
included in the book as our de facto build method.
Steve Martin <srm at netcomuk.co.uk>
Still can't think of anything witty to write here.
Unsubscribe: send email to listar at linuxfromscratch.org
and put 'unsubscribe lfs-dev' in the subject header of the message
More information about the lfs-dev