Changeset 516b668


Ignore:
Timestamp:
03/13/2005 03:49:41 PM (19 years ago)
Author:
Matthew Burgess <matthew@…>
Branches:
10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, 6.1, 6.1.1, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.5-systemd, 7.6, 7.6-systemd, 7.7, 7.7-systemd, 7.8, 7.8-systemd, 7.9, 7.9-systemd, 8.0, 8.1, 8.2, 8.3, 8.4, 9.0, 9.1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
Children:
6581f03
Parents:
e2c85b1
Message:
  • Fix bug 1061 by dynamically linking the pass1 toolchain

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@4741 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

Files:
4 edited

Legend:

Unmodified
Added
Removed
  • chapter01/changelog.xml

    re2c85b1 r516b668  
    8383</listitem>
    8484
     85<listitem><para>March 13, 2005 [matt]: Dynamically link the pass1 toolchain to
     86workaround bug 1061 and remove all related explanatory text</para></listitem>
     87
    8588<listitem><para>March 12, 2005 [matt]: Upgraded to udev-054</para></listitem>
    8689
  • chapter05/binutils-pass1.xml

    re2c85b1 r516b668  
    5555<para>Now prepare Binutils for compilation:</para>
    5656
    57 <screen><userinput>../binutils-&binutils-version;/configure --prefix=/tools \
    58     --disable-nls</userinput></screen>
     57<screen><userinput>../binutils-&binutils-version;/configure --prefix=/tools --disable-nls</userinput></screen>
    5958
    6059<para>The meaning of the configure options:</para>
     
    6968<varlistentry>
    7069<term><parameter>--disable-nls</parameter></term>
    71 <listitem><para>This disables internationalization. This is not needed
    72 for the static programs, and NLS can cause problems when linking
    73 statically.</para></listitem>
     70<listitem><para>This disables internationalization. This is not needed for the
     71temporary tools.</para></listitem>
    7472</varlistentry>
    7573</variablelist>
     
    7775<para>Continue with compiling the package:</para>
    7876
    79 <screen><userinput>make configure-host
    80 make LDFLAGS="-all-static"</userinput></screen>
    81 
    82 <para>The meaning of the make parameters:</para>
    83 
    84 <variablelist>
    85 <varlistentry>
    86 <term><parameter>configure-host</parameter></term>
    87 <listitem><para>This forces all subdirectories to be configured
    88 immediately. A statically-linked build will fail without it. Use this
    89 option to work around the problem.</para></listitem>
    90 </varlistentry>
    91 
    92 <varlistentry>
    93 <term><parameter>LDFLAGS="-all-static"</parameter></term>
    94 <listitem><para>This tells the linker that all Binutils programs
    95 should be linked statically. However, strictly speaking,
    96 <parameter>"-all-static"</parameter> is passed to the
    97 <command>libtool</command> program, which then passes
    98 <parameter>"-static"</parameter> to the linker.</para></listitem>
    99 </varlistentry>
    100 </variablelist>
     77<screen><userinput>make</userinput></screen>
    10178
    10279<para>Compilation is now complete. Ordinarily we would now run the
     
    11491
    11592<screen><userinput>make -C ld clean
    116 make -C ld LDFLAGS="-all-static" LIB_PATH=/tools/lib</userinput></screen>
     93make -C ld LIB_PATH=/tools/lib</userinput></screen>
    11794
    11895<para>The meaning of the make parameters:</para>
     
    127104
    128105<varlistentry>
    129 <term><parameter>-C ld LDFLAGS="-all-static"
    130 LIB_PATH=/tools/lib</parameter></term>
     106<term><parameter>-C ld LIB_PATH=/tools/lib</parameter></term>
    131107<listitem><para>This option rebuilds everything in the
    132108<filename class="directory">ld</filename> subdirectory. Specifying
  • chapter05/gcc-pass1.xml

    re2c85b1 r516b668  
    6464<varlistentry>
    6565<term><parameter>--enable-shared</parameter></term>
    66 <listitem><para>This switch may seem counter-intuitive at first.
    67 However, this switch allows the building of
     66<listitem><para>This switch allows the building of
    6867<filename class="libraryfile">libgcc_s.so.1</filename> and
    69 <filename class="libraryfile">libgcc_eh.a</filename>, and having
    70 <filename class="libraryfile">libgcc_eh.a</filename> available ensures that the configure
    71 script for Glibc (the next package we compile) produces the proper
    72 results. Note that the GCC binaries will still be linked statically
    73 because this is controlled by the <parameter>-static</parameter> value of
    74 the <envar>BOOT_LDFLAGS</envar> variable in the next
    75 step.</para></listitem>
     68<filename class="libraryfile">libgcc_eh.a</filename>.  Having
     69<filename class="libraryfile">libgcc_eh.a</filename> available ensures that the
     70configure script for Glibc (the next package we compile) produces the proper
     71results.</para></listitem>
    7672</varlistentry>
    7773
     
    8783<para>Continue with compiling the package:</para>
    8884
    89 <screen><userinput>make BOOT_LDFLAGS="-static" bootstrap</userinput></screen>
     85<screen><userinput>make bootstrap</userinput></screen>
    9086
    9187<para>The meaning of the make parameters:</para>
    9288
    9389<variablelist>
    94 <varlistentry>
    95 <term><parameter>BOOT_LDFLAGS="-static"</parameter></term>
    96 <listitem><para>This tells GCC to link its programs statically.</para></listitem>
    97 </varlistentry>
    98 
    9990<varlistentry>
    10091<term><parameter>bootstrap</parameter></term>
  • chapter05/toolchaintechnotes.xml

    re2c85b1 r516b668  
    176176LFS system.</para>
    177177
    178 <sect2>
     178<!-- Removed as part of the fix for bug 1061 - we no longer build pass1
     179     packages statically, therefore this explanation isn't required -->
     180
     181<!--<sect2>
    179182<title>Notes on Static Linking</title>
    180183
     
    219222achieved when the first two packages are built dynamically.</para>
    220223
    221 </sect2>
     224</sect2>-->
    222225
    223226</sect1>
Note: See TracChangeset for help on using the changeset viewer.