site  contact  subhomenews

gcc problem in Kirkstone-series

December 25, 2022 — BarryK

First bootup of EasyOS Kirkstone-series, looking good. However, same problem with gcc as reported when started the Dunfell-series a couple of years ago:

Once again, gcc has a horrifying lot of defaults:

# echo "" | cc -v -E - 2>&1 | grep cc1
 /usr/libexec/gcc/x86_64-poky-linux/11.3.0/cc1 -E -quiet -v - -march=skylake -mmmx -mpopcnt -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx -mavx2 -mno-sse4a -mno-fma4 -mno-xop -mfma -mno-avx512f -mbmi -mbmi2 -maes -mpclmul -mno-avx512vl -mno-avx512bw -mno-avx512dq -mno-avx512cd -mno-avx512er -mno-avx512pf -mno-avx512vbmi -mno-avx512ifma -mno-avx5124vnniw -mno-avx5124fmaps -mno-avx512vpopcntdq -mno-avx512vbmi2 -mno-gfni -mno-vpclmulqdq -mno-avx512vnni -mno-avx512bitalg -mno-avx512bf16 -mno-avx512vp2intersect -mno-3dnow -madx -mabm -mno-cldemote -mclflushopt -mno-clwb -mno-clzero -mcx16 -mno-enqcmd -mf16c -mfsgsbase -mfxsr -mno-hle -msahf -mno-lwp -mlzcnt -mmovbe -mno-movdir64b -mno-movdiri -mno-mwaitx -mno-pconfig -mno-pku -mno-prefetchwt1 -mprfchw -mno-ptwrite -mno-rdpid -mrdrnd -mrdseed -mno-rtm -mno-serialize -msgx -mno-sha -mno-shstk -mno-tbm -mno-tsxldtrk -mno-vaes -mno-waitpkg -mno-wbnoinvd -mxsave -mxsavec -mxsaveopt -mxsaves -mno-amx-tile -mno-amx-int8 -mno-amx-bf16 -mno-uintr -mno-hreset -mno-kl -mno-widekl -mno-avxvnni -mtune=generic -dumpbase -

In running EasyOS Kirkstone-series, recompiled gcc:

# mkdir build
# cd build
# ../configure --build=x86_64-poky-linux --prefix=/usr --exec_prefix=/usr --bindir=/usr/bin \
--sbindir=/usr/sbin --libexecdir=/usr/libexec --datadir=/usr/share --sysconfdir=/etc \
--sharedstatedir=/com --localstatedir=/var --libdir=/usr/lib --includedir=/usr/include \
--oldincludedir=/usr/include --infodir=/usr/share/info --mandir=/usr/share/man \
--disable-silent-rules --with-libtool-sysroot=/ --with-gnu-ld --enable-shared \
--enable-languages=c,c++ --enable-threads=posix --disable-multilib --enable-default-pie \
--enable-c99 --enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch \
--program-prefix=x86_64-poky-linux- --without-local-prefix --disable-install-libiberty \
--enable-lto --disable-libssp --enable-libitm --disable-bootstrap --disable-libmudflap \
--with-system-zlib --with-linker-hash-style=gnu --enable-linker-build-id --with-ppl=no \
--with-cloog=no --enable-checking=release --enable-cheaders=c_global --without-isl \
--with-build-sysroot=/ --disable-static --enable-nls --with-glibc-version=2.35 \
--enable-initfini-array --enable-__cxa_atexit --with-arch=nocona
# make
# new2dir make install


# echo "" | cc -v -E - 2>&1 | grep cc1
 /usr/libexec/gcc/x86_64-poky-linux/11.3.0/cc1 -E -quiet -v -imultiarch x86_64-linux-gnu - -mtune=generic -march=nocona -dumpbase -

Then used this new gcc to compile the 5.15.85 kernel. Almost the same configuration as for the 5.15.79 kernel, but have enabled zstd for squashfs.

Dunfell-series currently uses lz4-hc compression for easy.sfs. zstd is expected to result in a slightly smaller file size, but slightly slower decompression. It is a tradeoff that I want to try.    

Tags: easy