diff options
-rw-r--r-- | chapter01/changelog.xml | 13 | ||||
-rw-r--r-- | chapter06/adjusting.xml | 29 | ||||
-rw-r--r-- | chapter06/gcc.xml | 37 |
3 files changed, 42 insertions, 37 deletions
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 413830867..3afd45c21 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -43,12 +43,23 @@ appropriate for the entry or if needed the entire day's listitem. --> <listitem> + <para>2016-12-18</para> + <itemizedlist> + <listitem> + <para>[dj] - Update toolchain sanity checks to use values for + x86_64.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> <para>2016-12-17</para> <itemizedlist> <listitem> <para>[dj] - Remove {,/usr}/lib64 symlinks for x86_64 builds. Add /lib64 directory with symlinks to dynamic loader. Adjust installation - of glibc, gcc, and libcap to account for filesystemd changes.</para> + of glibc, gcc, and libcap to account for directory layout + changes.</para> </listitem> </itemizedlist> </listitem> diff --git a/chapter06/adjusting.xml b/chapter06/adjusting.xml index 04bb3eba0..b8cd5b530 100644 --- a/chapter06/adjusting.xml +++ b/chapter06/adjusting.xml @@ -50,13 +50,13 @@ readelf -l a.out | grep ': /lib'</userinput></screen> and the output of the last command will be (allowing for platform-specific differences in dynamic linker name):</para> -<screen os="c"><computeroutput>[Requesting program interpreter: /lib/ld-linux.so.2]</computeroutput></screen> +<screen os="c"><computeroutput>[Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]</computeroutput></screen> <para>Note that <filename class="directory">/lib</filename> is now the prefix of our dynamic linker.</para> - <note><para>On 64-bit systems the interpreter should be - /lib64/ld-linux-x86-64.so.2.</para></note> + <note><para>On 32-bit systems the interpreter should be + /lib/ld-linux.so.2.</para></note> <para os="d">Now make sure that we're setup to use the correct start files:</para> @@ -64,14 +64,9 @@ readelf -l a.out | grep ': /lib'</userinput></screen> <para os="f">The output of the last command should be:</para> -<screen><computeroutput>/usr/lib/crt1.o succeeded -/usr/lib/crti.o succeeded -/usr/lib/crtn.o succeeded</computeroutput></screen> - - <note><para>On 64-bit systems, the path above will be - /usr/lib/gcc/x86_64-pc-linux-gnu/&gcc-version;/../../../../lib64/. This - reduces to /usr/lib64 and /usr/lib64 is a symlink that points to - /usr/lib.</para></note> +<screen><computeroutput>/usr/lib/../lib/crt1.o succeeded +/usr/lib/../lib/crti.o succeeded +/usr/lib/../lib/crtn.o succeeded</computeroutput></screen> <para os="g">Verify that the compiler is searching for the correct header files:</para> @@ -91,14 +86,13 @@ readelf -l a.out | grep ': /lib'</userinput></screen> be ignored, but otherwise the output of the last command should be:</para> <screen><computeroutput>SEARCH_DIR("/usr/lib") -SEARCH_DIR("/lib");</computeroutput></screen> +SEARCH_DIR("/lib")</computeroutput></screen> <para os="l">Next make sure that we're using the correct libc:</para> <screen os="m"><userinput>grep "/lib.*/libc.so.6 " dummy.log</userinput></screen> - <para os="n">The output of the last command (allowing for a lib64 directory - on 64-bit hosts) should be:</para> + <para os="n">The output of the last command should be:</para> <screen os="o"><computeroutput>attempt to open /lib/libc.so.6 succeeded</computeroutput></screen> @@ -106,11 +100,10 @@ SEARCH_DIR("/lib");</computeroutput></screen> <screen os="q"><userinput>grep found dummy.log</userinput></screen> - <para os="r"> The output of the last command should be (allowing for - platform-specific differences in dynamic linker name and a lib64 directory on - 64-bit hosts):</para> + <para os="r">The output of the last command should be (allowing for + platform-specific differences in dynamic linker name):</para> -<screen os="s"><computeroutput>found ld-linux.so.2 at /lib/ld-linux.so.2</computeroutput></screen> +<screen os="s"><computeroutput>found ld-linux-x86-64.so.2 at /lib/ld-linux-x86-64.so.2</computeroutput></screen> <para os="t">If the output does not appear as shown above or is not received at all, then something is seriously wrong. Investigate and retrace the diff --git a/chapter06/gcc.xml b/chapter06/gcc.xml index 6a75fb287..db34251fc 100644 --- a/chapter06/gcc.xml +++ b/chapter06/gcc.xml @@ -120,7 +120,8 @@ cd build</userinput></screen> <userinput>grep -A7 Summ</userinput>.</para> <para>Results can be compared with those located at <ulink - url="&test-results;"/> and <ulink url="http://gcc.gnu.org/ml/gcc-testresults/"/>.</para> + url="&test-results;"/> and + <ulink url="http://gcc.gnu.org/ml/gcc-testresults/"/>.</para> <para>A few unexpected failures cannot always be avoided. The GCC developers are usually aware of these issues, but have not resolved them yet. @@ -179,9 +180,9 @@ ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/&gcc-version;/liblto_plugin.so \ href="adjusting.xml" xpointer="xpointer(//*[@os='f'])"/> -<screen><computeroutput>/usr/lib/gcc/i686-pc-linux-gnu/&gcc-version;/../../../crt1.o succeeded -/usr/lib/gcc/i686-pc-linux-gnu/&gcc-version;/../../../crti.o succeeded -/usr/lib/gcc/i686-pc-linux-gnu/&gcc-version;/../../../crtn.o succeeded</computeroutput></screen> +<screen><computeroutput>/usr/lib/gcc/x86_64-pc-linux-gnu/&gcc-version;/../../../../lib/crt1.o succeeded +/usr/lib/gcc/x86_64-pc-linux-gnu/&gcc-version;/../../../../lib/crti.o succeeded +/usr/lib/gcc/x86_64-pc-linux-gnu/&gcc-version;/../../../../lib/crtn.o succeeded</computeroutput></screen> <para>Depending on your machine architecture, the above may differ slightly, the difference usually being the name of the directory @@ -201,9 +202,9 @@ ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/&gcc-version;/liblto_plugin.so \ xpointer="xpointer(//*[@os='h'])"/> <screen><computeroutput>#include <...> search starts here: - /usr/lib/gcc/i686-pc-linux-gnu/&gcc-version;/include + /usr/lib/gcc/x86_64-pc-linux-gnu/&gcc-version;/include /usr/local/include - /usr/lib/gcc/i686-pc-linux-gnu/&gcc-version;/include-fixed + /usr/lib/gcc/x86_64-pc-linux-gnu/&gcc-version;/include-fixed /usr/include</computeroutput></screen> <para>Again, note that the directory named after your target triplet may be @@ -226,23 +227,23 @@ ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/&gcc-version;/liblto_plugin.so \ href="adjusting.xml" xpointer="xpointer(//*[@os='k'])"/> -<screen><computeroutput>SEARCH_DIR("/usr/i686-pc-linux-gnu/lib32") -SEARCH_DIR("/usr/local/lib32") -SEARCH_DIR("/lib32") -SEARCH_DIR("/usr/lib32") -SEARCH_DIR("/usr/i686-pc-linux-gnu/lib") +<screen><computeroutput>SEARCH_DIR("/usr/x86_64-pc-linux-gnu/lib64") +SEARCH_DIR("/usr/local/lib64") +SEARCH_DIR("/lib64") +SEARCH_DIR("/usr/lib64") +SEARCH_DIR("/usr/x86_64-pc-linux-gnu/lib") SEARCH_DIR("/usr/local/lib") SEARCH_DIR("/lib") SEARCH_DIR("/usr/lib");</computeroutput></screen> - <para>A 64-bit system may see a few different directories. For example, here - is the output from an x86_64 machine:</para> + <para>A 32-bit system may see a few different directories. For example, here + is the output from an i686 machine:</para> -<screen><computeroutput>SEARCH_DIR("/usr/x86_64-unknown-linux-gnu/lib64") -SEARCH_DIR("/usr/local/lib64") -SEARCH_DIR("/lib64") -SEARCH_DIR("/usr/lib64") -SEARCH_DIR("/usr/x86_64-unknown-linux-gnu/lib") +<screen><computeroutput>SEARCH_DIR("/usr/i686-pc-linux-gnu/lib32") +SEARCH_DIR("/usr/local/lib32") +SEARCH_DIR("/lib32") +SEARCH_DIR("/usr/lib32") +SEARCH_DIR("/usr/i686-pc-linux-gnu/lib") SEARCH_DIR("/usr/local/lib") SEARCH_DIR("/lib") SEARCH_DIR("/usr/lib");</computeroutput></screen> |