Skip to content

centminmod/centminmod-gcc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

91 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Disclaimer

There is no support or guarantees when using the provided scripts. If you break your operating system, the only remedy is to re-install your operating system and start fresh again. Use at your own risk and yes there are risks. These scripts are no maintained or supported for GCC 7, 8, 9 after CentOS SCL Yum repos are available which they are available now.

GCC 7 & 8 Compiler Scripts

Command Line Usage for install.sh

./install.sh

Usage:

./install.sh {install|install7|install8|installpgo7|installpgo8|installgcc|installgcc7|installgcc8|installpgogcc7|installpgogcc8|binutils7|binutils8}

Build GCC 9 RPM + Binutils RPM Only and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh install9

Build GCC 8 RPM + Binutils RPM Only and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh install8

Build GCC 7 RPM + Binutils RPM Only and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh install7

Build GCC 9 RPM only without Binutils RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh installgcc9

Build GCC 8 RPM only without Binutils RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh installgcc8

Build GCC 7 RPM only without Binutils RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh installgcc7

Build GCC 9 RPM only with PGO enabled without Binutils RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh installpgogcc9

Build GCC 8 RPM only with PGO enabled without Binutils RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh installpgogcc8

Build GCC 7 RPM only with PGO enabled without Binutils RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh installpgogcc7

Build Binutils RPM Only without GCC RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh binutils9

Build Binutils RPM Only without GCC RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh binutils8

Build Binutils RPM Only without GCC RPM and without installing. If you want to install the RPM too set in install.sh the variable GCC_YUMINSTALL='y'

./install.sh binutils7

GCC 9 Usage

  • /opt/gcc-9-20191102 is symlinked to /opt/gcc9 for easier reference as the GCC snapshot date timestamped builds increment
  • Using /opt/gcc9/enable allows you to set PATH appropriately. Example gcc binary is at /opt/gcc9/bin/gcc but with source file enabled, can reference just as gcc
source /opt/gcc9/enable

or directly without symlink alias

source /opt/gcc-9-20191102/enable
ld -v
GNU ld (GNU Binutils) 2.33.1

ld.gold -v
GNU gold (GNU Binutils 2.33.1) 1.16
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/gcc-9-20191102/libexec/gcc/x86_64-redhat-linux/9/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/opt/gcc-9-20191102 --disable-multilib --enable-bootstrap --enable-plugin --with-gcc-major-version-only --enable-shared --disable-nls --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-install-libiberty --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++ --enable-initfini-array --disable-libgcj --enable-gnu-indirect-function --with-tune=generic --build=x86_64-redhat-linux --enable-gold
Thread model: posix
gcc version 9.2.1 20191102 (GCC)
yum info binutils-gcc9 -q
Installed Packages
Name        : binutils-gcc9
Arch        : x86_64
Version     : 2.33.1
Release     : 1.el7
Size        : 46 M
Repo        : installed
From repo   : /binutils-gcc9-2.33.1-1.el7.x86_64
Summary     : binutils-gcc9 for centminmod.com LEMP stack installs
URL         : https://centminmod.com
License     : unknown
Description : binutils-gcc9 for centminmod.com LEMP stacks
yum info gcc9 -q
Installed Packages
Name        : gcc9
Arch        : x86_64
Version     : 9.2.1
Release     : 1.el7
Size        : 366 M
Repo        : installed
From repo   : /gcc9-9.2.1-1.el7.x86_64
Summary     : gcc9 for centminmod.com LEMP stack installs
URL         : https://centminmod.com
License     : unknown
Description : gcc9 for centminmod.com LEMP stacks
rpm -qp --provides /svr-setup/binutils-gcc9-2.33.1-1.el7.x86_64.rpm 
binutils-gcc9 = 2.33.1-1.el7
binutils-gcc9(x86-64) = 2.33.1-1.el7
rpm -qp --requires /svr-setup/binutils-gcc9-2.33.1-1.el7.x86_64.rpm
libc.so.6()(64bit)
libc.so.6(GLIBC_2.10)(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.8)(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libgcc_s.so.1()(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libm.so.6()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(CXXABI_1.3.5)(64bit)
libstdc++.so.6(GLIBCXX_3.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.11)(64bit)
libstdc++.so.6(GLIBCXX_3.4.15)(64bit)
libstdc++.so.6(GLIBCXX_3.4.18)(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1
rpm -qp --provides "/svr-setup/gcc9-9.2.1-1.el7.x86_64.rpm"
gcc9 = 9.2.1-1.el7
gcc9(x86-64) = 9.2.1-1.el7
libasan.so.5()(64bit)
libatomic.so.1()(64bit)
libatomic.so.1(LIBATOMIC_1.0)(64bit)
libatomic.so.1(LIBATOMIC_1.1)(64bit)
libatomic.so.1(LIBATOMIC_1.2)(64bit)
libcc1.so.0()(64bit)
libcc1plugin.so.0()(64bit)
libcp1plugin.so.0()(64bit)
libgomp.so.1()(64bit)
libgomp.so.1(GOACC_2.0)(64bit)
libgomp.so.1(GOACC_2.0.1)(64bit)
libgomp.so.1(GOMP_1.0)(64bit)
libgomp.so.1(GOMP_2.0)(64bit)
libgomp.so.1(GOMP_3.0)(64bit)
libgomp.so.1(GOMP_4.0)(64bit)
libgomp.so.1(GOMP_4.0.1)(64bit)
libgomp.so.1(GOMP_4.5)(64bit)
libgomp.so.1(GOMP_5.0)(64bit)
libgomp.so.1(GOMP_PLUGIN_1.0)(64bit)
libgomp.so.1(GOMP_PLUGIN_1.1)(64bit)
libgomp.so.1(GOMP_PLUGIN_1.2)(64bit)
libgomp.so.1(OACC_2.0)(64bit)
libgomp.so.1(OACC_2.0.1)(64bit)
libgomp.so.1(OACC_2.5)(64bit)
libgomp.so.1(OMP_1.0)(64bit)
libgomp.so.1(OMP_2.0)(64bit)
libgomp.so.1(OMP_3.0)(64bit)
libgomp.so.1(OMP_3.1)(64bit)
libgomp.so.1(OMP_4.0)(64bit)
libgomp.so.1(OMP_4.5)(64bit)
libgomp.so.1(OMP_5.0)(64bit)
libitm.so.1()(64bit)
libitm.so.1(LIBITM_1.0)(64bit)
libitm.so.1(LIBITM_1.1)(64bit)
liblsan.so.0()(64bit)
liblto_plugin.so.0()(64bit)
libquadmath.so.0()(64bit)
libquadmath.so.0(QUADMATH_1.0)(64bit)
libquadmath.so.0(QUADMATH_1.1)(64bit)
libquadmath.so.0(QUADMATH_1.2)(64bit)
libssp.so.0()(64bit)
libssp.so.0(LIBSSP_1.0)(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(CXXABI_1.3.1)(64bit)
libstdc++.so.6(CXXABI_1.3.10)(64bit)
libstdc++.so.6(CXXABI_1.3.11)(64bit)
libstdc++.so.6(CXXABI_1.3.12)(64bit)
libstdc++.so.6(CXXABI_1.3.2)(64bit)
libstdc++.so.6(CXXABI_1.3.3)(64bit)
libstdc++.so.6(CXXABI_1.3.4)(64bit)
libstdc++.so.6(CXXABI_1.3.5)(64bit)
libstdc++.so.6(CXXABI_1.3.6)(64bit)
libstdc++.so.6(CXXABI_1.3.7)(64bit)
libstdc++.so.6(CXXABI_1.3.8)(64bit)
libstdc++.so.6(CXXABI_1.3.9)(64bit)
libstdc++.so.6(CXXABI_FLOAT128)(64bit)
libstdc++.so.6(CXXABI_TM_1)(64bit)
libstdc++.so.6(GLIBCXX_3.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.1)(64bit)
libstdc++.so.6(GLIBCXX_3.4.10)(64bit)
libstdc++.so.6(GLIBCXX_3.4.11)(64bit)
libstdc++.so.6(GLIBCXX_3.4.12)(64bit)
libstdc++.so.6(GLIBCXX_3.4.13)(64bit)
libstdc++.so.6(GLIBCXX_3.4.14)(64bit)
libstdc++.so.6(GLIBCXX_3.4.15)(64bit)
libstdc++.so.6(GLIBCXX_3.4.16)(64bit)
libstdc++.so.6(GLIBCXX_3.4.17)(64bit)
libstdc++.so.6(GLIBCXX_3.4.18)(64bit)
libstdc++.so.6(GLIBCXX_3.4.19)(64bit)
libstdc++.so.6(GLIBCXX_3.4.2)(64bit)
libstdc++.so.6(GLIBCXX_3.4.20)(64bit)
libstdc++.so.6(GLIBCXX_3.4.21)(64bit)
libstdc++.so.6(GLIBCXX_3.4.22)(64bit)
libstdc++.so.6(GLIBCXX_3.4.23)(64bit)
libstdc++.so.6(GLIBCXX_3.4.24)(64bit)
libstdc++.so.6(GLIBCXX_3.4.25)(64bit)
libstdc++.so.6(GLIBCXX_3.4.26)(64bit)
libstdc++.so.6(GLIBCXX_3.4.27)(64bit)
libstdc++.so.6(GLIBCXX_3.4.28)(64bit)
libstdc++.so.6(GLIBCXX_3.4.3)(64bit)
libstdc++.so.6(GLIBCXX_3.4.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.5)(64bit)
libstdc++.so.6(GLIBCXX_3.4.6)(64bit)
libstdc++.so.6(GLIBCXX_3.4.7)(64bit)
libstdc++.so.6(GLIBCXX_3.4.8)(64bit)
libstdc++.so.6(GLIBCXX_3.4.9)(64bit)
libtsan.so.0()(64bit)
libubsan.so.1()(64bit)

GCC 8 Usage

  • /opt/gcc-8-20190222 is symlinked to /opt/gcc8 for easier reference as the GCC snapshot date timestamped builds increment
  • Using /opt/gcc8/enable allows you to set PATH appropriately. Example gcc binary is at /opt/gcc8/bin/gcc but with source file enabled, can reference just as gcc
source /opt/gcc8/enable

or directly without symlink alias

source /opt/gcc-8-20190222/enable
ld -v
GNU ld (GNU Binutils) 2.31

ld.gold -v
GNU gold (GNU Binutils 2.31) 1.16
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/gcc-8-20190222/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/opt/gcc-8-20190222 --disable-multilib --enable-bootstrap --enable-plugin --with-gcc-major-version-only --enable-shared --disable-nls --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-install-libiberty --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++ --enable-initfini-array --disable-libgcj --enable-gnu-indirect-function --with-tune=generic --build=x86_64-redhat-linux --enable-lto --enable-gold
Thread model: posix
gcc version 8.3.1 20190222 (GCC) 
yum info binutils-gcc8 -q
Name        : binutils-gcc8
Arch        : x86_64
Version     : 2.31
Release     : 1.el7
Size        : 47 M
Repo        : installed
Summary     : binutils-gcc8 for centminmod.com LEMP stack installs
URL         : https://centminmod.com
License     : unknown
Description : binutils-gcc8 for centminmod.com LEMP stacks
yum info gcc8-pgo -q
Installed Packages
Name        : gcc8-pgo
Arch        : x86_64
Version     : 8.3.1
Release     : 1.el7
Size        : 302 M
Repo        : installed
Summary     : gcc8-pgo for centminmod.com LEMP stack installs
URL         : https://centminmod.com
License     : unknown
Description : gcc8-pgo for centminmod.com LEMP stacks


* Mon Feb 25 2019 George Liu <centminmod.com> 8
- GCC 8 for centminmod.com LEMP stack installs
rpm -qp --provides /svr-setup/binutils-gcc8-2.31-1.el7.x86_64.rpm
binutils-gcc8 = 2.31-1.el7
binutils-gcc8(x86-64) = 2.31-1.el7
rpm -qp --requires /svr-setup/binutils-gcc8-2.31-1.el7.x86_64.rpm
ld-linux-x86-64.so.2()(64bit)
ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.10)(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libm.so.6()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1
rpm -qp --provides "/svr-setup/gcc8-pgo-8.3.1-1.el7.x86_64.rpm"
gcc8-pgo = 8.3.1-1.el7
gcc8-pgo(x86-64) = 8.3.1-1.el7
libasan.so.5()(64bit)
libatomic.so.1()(64bit)
libatomic.so.1(LIBATOMIC_1.0)(64bit)
libatomic.so.1(LIBATOMIC_1.1)(64bit)
libatomic.so.1(LIBATOMIC_1.2)(64bit)
libcc1.so.0()(64bit)
libcc1plugin.so.0()(64bit)
libcp1plugin.so.0()(64bit)
libgomp.so.1()(64bit)
libgomp.so.1(GOACC_2.0)(64bit)
libgomp.so.1(GOACC_2.0.1)(64bit)
libgomp.so.1(GOMP_1.0)(64bit)
libgomp.so.1(GOMP_2.0)(64bit)
libgomp.so.1(GOMP_3.0)(64bit)
libgomp.so.1(GOMP_4.0)(64bit)
libgomp.so.1(GOMP_4.0.1)(64bit)
libgomp.so.1(GOMP_4.5)(64bit)
libgomp.so.1(GOMP_PLUGIN_1.0)(64bit)
libgomp.so.1(GOMP_PLUGIN_1.1)(64bit)
libgomp.so.1(OACC_2.0)(64bit)
libgomp.so.1(OACC_2.0.1)(64bit)
libgomp.so.1(OMP_1.0)(64bit)
libgomp.so.1(OMP_2.0)(64bit)
libgomp.so.1(OMP_3.0)(64bit)
libgomp.so.1(OMP_3.1)(64bit)
libgomp.so.1(OMP_4.0)(64bit)
libgomp.so.1(OMP_4.5)(64bit)
libitm.so.1()(64bit)
libitm.so.1(LIBITM_1.0)(64bit)
libitm.so.1(LIBITM_1.1)(64bit)
liblsan.so.0()(64bit)
liblto_plugin.so.0()(64bit)
libmpx.so.2()(64bit)
libmpx.so.2(LIBMPX_1.0)(64bit)
libmpx.so.2(LIBMPX_2.0)(64bit)
libmpxwrappers.so.2()(64bit)
libmpxwrappers.so.2(LIBMPXWRAPPERS_1.0)(64bit)
libquadmath.so.0()(64bit)
libquadmath.so.0(QUADMATH_1.0)(64bit)
libquadmath.so.0(QUADMATH_1.1)(64bit)
libssp.so.0()(64bit)
libssp.so.0(LIBSSP_1.0)(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(CXXABI_1.3.1)(64bit)
libstdc++.so.6(CXXABI_1.3.10)(64bit)
libstdc++.so.6(CXXABI_1.3.11)(64bit)
libstdc++.so.6(CXXABI_1.3.2)(64bit)
libstdc++.so.6(CXXABI_1.3.3)(64bit)
libstdc++.so.6(CXXABI_1.3.4)(64bit)
libstdc++.so.6(CXXABI_1.3.5)(64bit)
libstdc++.so.6(CXXABI_1.3.6)(64bit)
libstdc++.so.6(CXXABI_1.3.7)(64bit)
libstdc++.so.6(CXXABI_1.3.8)(64bit)
libstdc++.so.6(CXXABI_1.3.9)(64bit)
libstdc++.so.6(CXXABI_FLOAT128)(64bit)
libstdc++.so.6(CXXABI_TM_1)(64bit)
libstdc++.so.6(GLIBCXX_3.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.1)(64bit)
libstdc++.so.6(GLIBCXX_3.4.10)(64bit)
libstdc++.so.6(GLIBCXX_3.4.11)(64bit)
libstdc++.so.6(GLIBCXX_3.4.12)(64bit)
libstdc++.so.6(GLIBCXX_3.4.13)(64bit)
libstdc++.so.6(GLIBCXX_3.4.14)(64bit)
libstdc++.so.6(GLIBCXX_3.4.15)(64bit)
libstdc++.so.6(GLIBCXX_3.4.16)(64bit)
libstdc++.so.6(GLIBCXX_3.4.17)(64bit)
libstdc++.so.6(GLIBCXX_3.4.18)(64bit)
libstdc++.so.6(GLIBCXX_3.4.19)(64bit)
libstdc++.so.6(GLIBCXX_3.4.2)(64bit)
libstdc++.so.6(GLIBCXX_3.4.20)(64bit)
libstdc++.so.6(GLIBCXX_3.4.21)(64bit)
libstdc++.so.6(GLIBCXX_3.4.22)(64bit)
libstdc++.so.6(GLIBCXX_3.4.23)(64bit)
libstdc++.so.6(GLIBCXX_3.4.24)(64bit)
libstdc++.so.6(GLIBCXX_3.4.25)(64bit)
libstdc++.so.6(GLIBCXX_3.4.3)(64bit)
libstdc++.so.6(GLIBCXX_3.4.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.5)(64bit)
libstdc++.so.6(GLIBCXX_3.4.6)(64bit)
libstdc++.so.6(GLIBCXX_3.4.7)(64bit)
libstdc++.so.6(GLIBCXX_3.4.8)(64bit)
libstdc++.so.6(GLIBCXX_3.4.9)(64bit)
libtsan.so.0()(64bit)
libubsan.so.1()(64bit)
rpm -qp --requires "/svr-setup/gcc8-pgo-8.3.1-1.el7.x86_64.rpm"
/bin/sh
/bin/sh
/bin/sh
ld-linux-x86-64.so.2()(64bit)
ld-linux-x86-64.so.2(GLIBC_2.2.5)(64bit)
ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)
libasan.so.5()(64bit)
libatomic.so.1()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.10)(64bit)
libc.so.6(GLIBC_2.11)(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.16)(64bit)
libc.so.6(GLIBC_2.17)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.2)(64bit)
libc.so.6(GLIBC_2.3.3)(64bit)
libc.so.6(GLIBC_2.6)(64bit)
libcc1.so.0()(64bit)
libcc1plugin.so.0()(64bit)
libcp1plugin.so.0()(64bit)
libdl.so.2()(64bit)
libdl.so.2(GLIBC_2.2.5)(64bit)
libgcc_s.so.1()(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libgcc_s.so.1(GCC_3.3)(64bit)
libgcc_s.so.1(GCC_4.2.0)(64bit)
libgomp.so.1()(64bit)
libitm.so.1()(64bit)
liblsan.so.0()(64bit)
liblto_plugin.so.0()(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libmpx.so.2()(64bit)
libmpxwrappers.so.2()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.3)(64bit)
libpthread.so.0(GLIBC_2.3.4)(64bit)
libquadmath.so.0()(64bit)
librt.so.1()(64bit)
librt.so.1(GLIBC_2.2.5)(64bit)
libssp.so.0()(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(CXXABI_1.3.8)(64bit)
libstdc++.so.6(CXXABI_1.3.9)(64bit)
libstdc++.so.6(GLIBCXX_3.4)(64bit)
libstdc++.so.6(GLIBCXX_3.4.20)(64bit)
libstdc++.so.6(GLIBCXX_3.4.21)(64bit)
libstdc++.so.6(GLIBCXX_3.4.9)(64bit)
libtsan.so.0()(64bit)
libubsan.so.1()(64bit)
libz.so.1()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1

GCC 7 Usage

  • /opt/gcc-7-20180111 is symlinked to /opt/gcc7 for easier reference as the GCC snapshot date timestamped builds increment
  • Using /opt/gcc7/enable allows you to set PATH appropriately. Example gcc binary is at /opt/gcc7/bin/gcc but with source file enabled, can reference just as gcc
source /opt/gcc7/enable

or directly without symlink alias

source /opt/gcc-7-20180111/enable
gcc -v    
Using built-in specs.
COLLECT_GCC=/opt/gcc7/bin/gcc
COLLECT_LTO_WRAPPER=/opt/gcc-7-20180111/libexec/gcc/x86_64-redhat-linux/7/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/opt/gcc-7-20180111 --disable-multilib --enable-bootstrap --enable-plugin --with-gcc-major-version-only --enable-shared --disable-nls --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-install-libiberty --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++ --enable-initfini-array --disable-libgcj --enable-gnu-indirect-function --with-tune=generic --build=x86_64-redhat-linux --enable-lto --enable-gold
Thread model: posix
gcc version 7.2.1 20180111 (GCC) 

RPMs

Build both GCC 7 & GCC 8 RPMs (both PGO + non-PGO) and accompanying Binutils RPMs all at once

./install-all.sh

resulting RPMs saved in /svr-setup directory built on Intel Core i7 4790K

ls -lah /svr-setup | egrep 'gcc[7,8]|binutils-gcc' | grep rpm
-rw-r--r--    1 root      root       5.2M Jan 21 03:37 binutils-gcc7-2.29.1-1.el7.x86_64.rpm
-rw-r--r--    1 root      root       5.2M Jan 21 04:28 binutils-gcc8-2.29.1-1.el7.x86_64.rpm
-rw-r--r--    1 root      root        33M Jan 21 04:00 gcc7-7.2.1-1.el7.x86_64.rpm
-rw-r--r--    1 root      root        37M Jan 21 04:27 gcc7-pgo-7.2.1-1.el7.x86_64.rpm
-rw-r--r--    1 root      root        36M Jan 21 04:51 gcc8-8.0-1.el7.x86_64.rpm
-rw-r--r--    1 root      root        40M Jan 21 05:29 gcc8-pgo-8.0-1.el7.x86_64.rpm

Total Run Time: 6771.610319117 seconds