Ignore:
Timestamp:
05/03/2006 02:37:49 AM (18 years ago)
Author:
Jeremy Huntwork <jhuntwork@…>
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.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:
8abeb3b
Parents:
fffff97
Message:

Fixed sanity checks to work after final GCC and changed their format.
Resolves ticket #1768.

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chapter06/readjusting.xml

    rfffff97 r09f1daf  
    5353  </important>
    5454
    55   <caution>
    56     <para>It is imperative at this point to stop and ensure that the basic
    57     functions (compiling and linking) of the adjusted toolchain are working
    58     as expected. To do this, perform a sanity check:</para>
     55  <para>It is imperative at this point to ensure that the basic
     56  functions (compiling and linking) of the adjusted toolchain are working
     57  as expected. To do this, perform the following sanity checks:</para>
    5958
    60 <screen><userinput>echo 'main(){}' &gt; dummy.c
     59<screen role="nodump" os="a"><userinput>echo 'main(){}' &gt; dummy.c
    6160cc dummy.c -Wl,--verbose &amp;&gt; dummy.log
    6261readelf -l a.out | grep ': /lib'</userinput></screen>
    6362
    64     <para>If everything is working correctly, there should be no errors,
    65     and the output of the last command will be (allowing for
    66     platform-specific differences in dynamic linker name):</para>
     63  <para os="b">If everything is working correctly, there should be no errors,
     64  and the output of the last command will be (allowing for
     65  platform-specific differences in dynamic linker name):</para>
    6766
    68 <screen><computeroutput>[Requesting program interpreter: /lib/ld-linux.so.2]</computeroutput></screen>
     67<screen os="c"><computeroutput>[Requesting program interpreter: /lib/ld-linux.so.2]</computeroutput></screen>
    6968
    70     <para>Note that <filename class="directory">/lib</filename> is now
    71     the prefix of our dynamic linker.</para>
     69  <para>Note that <filename class="directory">/lib</filename> is now
     70  the prefix of our dynamic linker.</para>
    7271
    73     <para>Now make sure that we're setup to use the correct start files:</para>
     72  <para os="d">Now make sure that we're setup to use the correct startfiles:</para>
    7473
    75 <screen><userinput>grep "/usr/lib/crt.* " dummy.log</userinput></screen>
     74<screen role="nodump" os="e"><userinput>grep -o '/usr/lib.*/crt[1in].* .*' dummy.log</userinput></screen>
    7675
    77     <para>If everything is working correctly, there should be no errors,
     76  <para os="f">If everything is working correctly, there should be no errors,
    7877    and the output of the last command will be:</para>
    7978
    80 <screen><computeroutput>attempt to open /usr/lib/crt1.o succeeded
    81 attempt to open /usr/lib/crti.o succeeded
    82 attempt to open /usr/lib/crtn.o succeeded</computeroutput></screen>
     79<screen><computeroutput>/usr/lib/crt1.o succeeded
     80/usr/lib/crti.o succeeded
     81/usr/lib/crtn.o succeeded</computeroutput></screen>
    8382
    84     <para>Next make sure that we're using the correct libc:</para>
     83  <para os="g">Next, verify that the new linker is being used with the correct search paths:</para>
    8584
    86 <screen><userinput>grep "/lib/libc.so.6 " dummy.log</userinput></screen>
     85<screen role="nodump" os="h"><userinput>grep 'SEARCH.*/usr/lib' dummy.log |sed 's|; |\n|g'</userinput></screen>
    8786
    88     <para>If everything is working correctly, there should be no errors,
    89     and the output of the last command will be:</para>
     87  <para os="i">If everything is working correctly, there should be no errors,
     88  and the output of the last command will be:</para>
    9089
    91 <screen><computeroutput>attempt to open /lib/libc.so.6 succeeded</computeroutput></screen>
     90<screen><computeroutput>SEARCH_DIR("/tools/i686-pc-linux-gnu/lib")
     91SEARCH_DIR("/usr/lib")
     92SEARCH_DIR("/lib");</computeroutput></screen>
    9293
    93     <para>Lastly, make sure GCC is using the correct dynamic linker:</para>
     94  <para os="j">Next make sure that we're using the correct libc:</para>
    9495
    95 <screen><userinput>grep found dummy.log</userinput></screen>
     96<screen role="nodump" os="k"><userinput>grep "/lib/libc.so.6 " dummy.log</userinput></screen>
    9697
    97     <para>If everything is working correctly, there should be no errors,
    98     and the output of the last command will be (allowing for
    99     platform-specific differences in dynamic linker name):</para>
     98  <para os="l">If everything is working correctly, there should be no errors,
     99  and the output of the last command will be:</para>
    100100
    101 <screen><computeroutput>found ld-linux.so.2 at /lib/ld-linux.so.2</computeroutput></screen>
     101<screen os="m"><computeroutput>attempt to open /lib/libc.so.6 succeeded</computeroutput></screen>
    102102
    103     <para>If the output does not appear as shown above or is not received
    104     at all, then something is seriously wrong. Investigate and retrace the
    105     steps to find out where the problem is and correct it. The most likely
    106     reason is that something went wrong with the specs file amendment
    107     above. Any issues will need to be resolved before continuing on with
    108     the process.</para>
     103  <para os="n">Lastly, make sure GCC is using the correct dynamic linker:</para>
    109104
    110     <para>Once everything is working correctly, clean up the test
    111     files:</para>
     105<screen role="nodump" os="o"><userinput>grep found dummy.log</userinput></screen>
    112106
    113 <screen><userinput>rm -v dummy.c a.out dummy.log</userinput></screen>
    114   </caution>
     107  <para os="p">If everything is working correctly, there should be no errors,
     108  and the output of the last command will be (allowing for
     109  platform-specific differences in dynamic linker name):</para>
     110
     111<screen os="q"><computeroutput>found ld-linux.so.2 at /lib/ld-linux.so.2</computeroutput></screen>
     112
     113  <para os="r">If the output does not appear as shown above or is not received
     114  at all, then something is seriously wrong. Investigate and retrace the
     115  steps to find out where the problem is and correct it. The most likely
     116  reason is that something went wrong with the specs file adjustment. Any
     117  issues will need to be resolved before continuing on with the process.</para>
     118
     119  <para os="s">Once everything is working correctly, clean up the test files:</para>
     120
     121<screen role="nodump" os="t"><userinput>rm -v dummy.c a.out dummy.log</userinput></screen>
    115122
    116123</sect1>
Note: See TracChangeset for help on using the changeset viewer.