libstdc++.so.6(GLIBCXX_3.4.15),但 CentOS 6 目前最高版本為 gcc-4.4,雖然 steam repo 中已有編譯好的 gcc-4.7 相關的套件,但安裝時 filesystem 必須 >= 3,目前 CentOS 6 的 filesystem 最高版本為 filesystem-2.4.30,因沒找到 filesystem-3.xxx.el6.x86_64.rpm 套件,所以下載 fedora 16 的 srpm 自行編譯。
[dywang@dywnb ~]$ cd rpmbuild [dywang@dywnb rpmbuild]$ wget ftp://ftp.pbone.net/vol4/archive.fedoraproject.org/fedora/linux/\ releases/16/Everything/source/SRPMS/gcc-4.6.2-1.fc16.src.rpm [dywang@dywnb rpmbuild]$ wget ftp://ftp.pbone.net/vol4/archive.fedoraproject.org/fedora/linux/\ releases/16/Everything/source/SRPMS/binutils-2.21.53.0.1-2.fc16.src.rpm
[dywang@dywnb rpmbuild]$ rpm -ivh binutils-2.21.53.0.1-2.fc16.src.rpm [dywang@dywnb rpmbuild]$ rpm -ivh gcc-4.6.2-1.fc16.src.rpm
[dywang@dywnb rpmbuild]$ rpmbuild -ba ~/rpmbuild/SPECS/binutils.spec
[dywang@dywnb rpmbuild]$ sudo rpm -Uvh ~/rpmbuild/RPMS/x86_64/binutils-*
>=0.8-3。
[dywang@dywnb rpmbuild]$ cp SPECS/gcc.spec SPECS/gcc.spec.orig
[dywang@dywnb rpmbuild]$ vim SPECS/gcc.spec
[dywang@dywnb rpmbuild]$ diff -uN SPECS/gcc.spec.orig SPECS/gcc.spec
--- SPECS/gcc.spec.orig 2011-10-27 19:07:27.000000000 +0800
+++ SPECS/gcc.spec 2016-07-07 16:02:57.189504261 +0800
@@ -296,7 +296,7 @@
Requires: libquadmath = %{version}-%{release}
Requires: libquadmath-devel = %{version}-%{release}
%endif
-BuildRequires: gmp-devel >= 4.1.2-8, mpfr-devel >= 2.2.1, libmpc-devel >= 0.8.1
+BuildRequires: gmp-devel >= 4.1.2-8, mpfr-devel >= 2.2.1, libmpc-devel >= 0.8-3
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
Autoreq: true
@@ -1083,7 +1083,7 @@
cp -r -p ../libstdc++-v3/doc/html ../rpm.doc/libstdc++-v3/html
cp -r -p $libstdcxx_doc_builddir/html ../rpm.doc/libstdc++-v3/html/api
mkdir -p %{buildroot}%{_mandir}/man3
-cp -r -p $libstdcxx_doc_builddir/man/man3/* %{buildroot}%{_mandir}/man3/
+#cp -rf -p $libstdcxx_doc_builddir/man/* %{buildroot}%{_mandir}/man3/
find ../rpm.doc/libstdc++-v3 -name \*~ | xargs rm
%endif
[dywang@dywnb rpmbuild]$ rpmbuild -ba ~/rpmbuild/SPECS/gcc.spec
[dywang@dywnb rpmbuild]$ ls RPMS/x86_64/*4.6.2*.rpm RPMS/x86_64/cpp-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgnat-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgnat-devel-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-base-debuginfo-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgnat-static-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-c++-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgo-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-debuginfo-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgo-devel-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-gfortran-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgomp-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-gnat-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgo-static-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-go-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libmudflap-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-java-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libmudflap-devel-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-objc-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libmudflap-static-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-objc++-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libobjc-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/gcc-plugin-devel-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libquadmath-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgcc-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libquadmath-devel-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgcj-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libquadmath-static-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgcj-devel-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libstdc++-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgcj-src-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libstdc++-devel-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgfortran-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libstdc++-docs-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libgfortran-static-4.6.2-1.el6.x86_64.rpm RPMS/x86_64/libstdc++-static-4.6.2-1.el6.x86_64.rpm