Changes in chapter08/gcc.xml [5f2ba8c:e4e7ffb]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter08/gcc.xml
r5f2ba8c re4e7ffb 55 55 <screen><userinput remap="pre">patch -Np1 -i ../&gcc-upstream-fixes-patch;</userinput></screen> 56 56 --> 57 <para>If building on x86_64, change the default directory name for 64-bit 58 libraries to <quote>lib</quote>:</para> 59 60 <screen><userinput remap="pre">case $(uname -m) in 61 x86_64) 62 sed -e '/m64=/s/lib64/lib/' \ 63 -i.orig gcc/config/i386/t-linux64 64 ;; 65 esac</userinput></screen> 57 <para>On ARM64 hosts, set the default directory name for 58 64-bit libraries to <quote>lib</quote>:</para> 59 60 <screen><userinput remap="pre">sed -e '/lp64=/s/lib64/lib/' \ 61 -i.orig gcc/config/aarch64/t-aarch64-linux</userinput></screen> 66 62 67 63 <para>The GCC documentation recommends building GCC in a dedicated build directory:</para> … … 174 170 175 171 <para> 176 Eight gcc tests (out of over 185,000): 177 <!-- https://gcc.gnu.org/PR106375 --><filename>pr56837.c</filename> 178 and seven tests in the <filename class='directory'>analyzer</filename> 172 In gcc tests (out of over 185,000), 173 seven tests in the <filename class='directory'>analyzer</filename> 179 174 directory are known to fail. 180 175 … … 183 178 known to fail. 184 179 185 For g++, 2 1tests (out of approximately 250,000): 14180 For g++, 22 tests (out of approximately 250,000): 14 186 181 <quote>AddressSanitizer*</quote> 187 tests and 7 <filename>interception-malloc-test-1.C</filename> tests, are 182 tests, 7 <filename>interception-malloc-test-1.C</filename> tests, 183 and one test named <filename>contracts-tmpl-spec2.C</filename> are 188 184 known to fail. 189 185 190 Additionally, several tests in the 191 <filename class='directory'>vect</filename> directory are known to fail 192 if the hardware does not support AVX.</para> 186 On ARM64, many tests in the 187 <filename class='directory'>c-c++-common/hwasan</filename> 188 directory are known to fail in both gcc and g++ tests<!-- why? -->, 189 and many tests in the 190 <!-- https://gcc.gnu.org/PR111124 --> 191 <filename class='directory'>g++.dg/modules</filename> 192 directory are known to fail in g++ tests. 193 </para> 193 194 194 195 <para>A few unexpected failures cannot always be avoided. The GCC developers … … 240 241 platform-specific differences in the dynamic linker name):</para> 241 242 242 <screen><computeroutput>[Requesting program interpreter: /lib 64/ld-linux-x86-64.so.2]</computeroutput></screen>243 <screen><computeroutput>[Requesting program interpreter: /lib/ld-linux-aarch64.so.1]</computeroutput></screen> 243 244 244 245 <para>Now make sure that we're set up to use the correct start files:</para> … … 248 249 <para>The output of the last command should be:</para> 249 250 250 <screen><computeroutput>/usr/lib/gcc/ x86_64-pc-linux-gnu/&gcc-version;/../../../../lib/Scrt1.o succeeded251 /usr/lib/gcc/ x86_64-pc-linux-gnu/&gcc-version;/../../../../lib/crti.o succeeded252 /usr/lib/gcc/ x86_64-pc-linux-gnu/&gcc-version;/../../../../lib/crtn.o succeeded</computeroutput></screen>251 <screen><computeroutput>/usr/lib/gcc/aarch64-unknown-linux-gnu/&gcc-version;/../../../../lib/Scrt1.o succeeded 252 /usr/lib/gcc/aarch64-unknown-linux-gnu/&gcc-version;/../../../../lib/crti.o succeeded 253 /usr/lib/gcc/aarch64-unknown-linux-gnu/&gcc-version;/../../../../lib/crtn.o succeeded</computeroutput></screen> 253 254 254 255 <para>Depending on your machine architecture, the above may differ slightly. … … 267 268 268 269 <screen><computeroutput>#include <...> search starts here: 269 /usr/lib/gcc/ x86_64-pc-linux-gnu/&gcc-version;/include270 /usr/lib/gcc/aarch64-unknown-linux-gnu/&gcc-version;/include 270 271 /usr/local/include 271 /usr/lib/gcc/ x86_64-pc-linux-gnu/&gcc-version;/include-fixed272 /usr/lib/gcc/aarch64-unknown-linux-gnu/&gcc-version;/include-fixed 272 273 /usr/include</computeroutput></screen> 273 274 … … 282 283 be ignored, but otherwise the output of the last command should be:</para> 283 284 284 <screen><computeroutput>SEARCH_DIR("/usr/ x86_64-pc-linux-gnu/lib64")285 <screen><computeroutput>SEARCH_DIR("/usr/aarch64-unknown-linux-gnu/lib64") 285 286 SEARCH_DIR("/usr/local/lib64") 286 287 SEARCH_DIR("/lib64") 287 288 SEARCH_DIR("/usr/lib64") 288 SEARCH_DIR("/usr/ x86_64-pc-linux-gnu/lib")289 SEARCH_DIR("/usr/aarch64-unknown-linux-gnu/lib") 289 290 SEARCH_DIR("/usr/local/lib") 290 291 SEARCH_DIR("/lib") 291 292 SEARCH_DIR("/usr/lib");</computeroutput></screen> 292 293 <!-- 293 294 <para>A 32-bit system may use a few other directories. For example, here 294 295 is the output from an i686 machine:</para> … … 302 303 SEARCH_DIR("/lib") 303 304 SEARCH_DIR("/usr/lib");</computeroutput></screen> 304 305 --> 305 306 <para>Next make sure that we're using the correct libc:</para> 306 307 … … 318 319 platform-specific differences in dynamic linker name):</para> 319 320 320 <screen><computeroutput>found ld-linux- x86-64.so.2 at /usr/lib/ld-linux-x86-64.so.2</computeroutput></screen>321 <screen><computeroutput>found ld-linux-aarch64.so.1 at /usr/lib/ld-linux-aarch64.so.1</computeroutput></screen> 321 322 322 323 <para>If the output does not appear as shown above or is not received
Note:
See TracChangeset
for help on using the changeset viewer.