[lfs-dev] gcc fails to build

John Frankish john.frankish at outlook.com
Fri Nov 9 03:15:05 PST 2018


>>>> Ref:
>>>>
>>>> Linux From Scratch - Version SVN-20181029 Chapter 5. Constructing a 
>>>> Temporary System 5.5. GCC-8.2.0 - Pass 1
>>>>
>>>> Using the latest script to update the dynamic linker results in gcc failing to build.
>>>>
>>>> Using a previous script fixes the problem.
>>>>
>>>> Details below.
>>>>
>>>>
>>>>
>>>> This script:
>>>>
>>>> for file in gcc/config/{linux,i386/linux{,64}}.h
>>>> do
>>>>   cp -uv $file{,.orig}
>>>>   sed -e 's@/lib\(64\)\?\(32\)\?/ld@/tools&@g' \
>>>>       -e 's@/usr@/tools at g' $file.orig > $file
>>>>   echo '
>>>> #undef STANDARD_STARTFILE_PREFIX_1
>>>> #undef STANDARD_STARTFILE_PREFIX_2
>>>> #define STANDARD_STARTFILE_PREFIX_1 "/tools/lib/"
>>>> #define STANDARD_STARTFILE_PREFIX_2 ""' >> $file
>>>>     touch $file.orig
>>>> done
>>>>
>>> This script has been in the book for a couple of years. It is hard to 
>>> believe that nobody else has seen a failure if it is wrong.
>>>
>>> Maybe your system is not recognized as either i386 or x86_64, or not as linux?
>>>
>>> Are you building on a Mac, Unix derivate or raspberry pi? What is the
>>> response of the " arch" command?
>>>
>> I'm building on a linux machine recognised as x86_64 and I
>> tried three separate times...
>>
> Could it be a copy/paste artifact, such as a space after '\' at the end
> of a line?
> GNU_TARGET_OS_etc is defined in gcc/config/linux.h, and shouldn't
> be modified by the said script; unless possibly if there is a typo.
> Sorry if I sound like the error comes from your side (script, our unusual
> system, I rule out LFS and LFS_TGT variable settings, since it seems to work
> with the old script), but really, after 2 years, somebody should have spotted
> the same error as you.
> 
I don't think that the new script has been in use as much as two years, since I last built using the LFS instructions a year ago with the old script. This being said, yes, you would have thought that somebody else would have noticed it.

It could be a copy paste error, but I tried three times with the new script and it worked first time when copy pasting the old script...




More information about the lfs-dev mailing list