我被要求在Red 6和Solaris 10上重新创建GCC 4.5.1的版本。现有的Red 6机器安装了4.5.1。最后一台Solaris 10机器最近吃了自己,因此,我继承了joy。
周围没有人知道GCC是用什么建立起来的。我们可以很容易地获得配置选项gcc -v,但哪个版本的GMP,MPC和MPFR是一个谜。我试过:
提前感谢您的协助。
发布于 2019-03-10 04:49:03
从源代码中下载/编译gmp、mpfr和mpc并不是正式推荐。您应该尝试先从包管理器下载它:
yum install gmp-devel mpfr-devel libmpc-devel
否则,GCC 4.5.0附带的doc/install.texi
推荐GMP4.3.2或更高版本、MPFR2.4.2或更高版本和MPC 0.8.1或更高版本。
GCC还支持使用依赖项进行源树编译。GCC的新版本有contrib/download_prerequisites
,这在旧版本中不存在。然而,脚本的最早版本只是下载tarball并在GCC源目录中解压缩它(其中包含已剥离的组件)。GCC检测到它,并将自动构建它。
配置标志--with-mpfr
等。只有当您已经在其他地方构建了依赖项时,才会这样做。这是最痛苦的选择,应该作为最后的手段。
发布于 2019-03-10 04:32:21
用gcc -S -fverbose-asm
编译源文件。GMP和MFPR的版本将作为对生成的.s
程序集列表文件的注释:
# GNU C11 (Ubuntu 7.3.0-27ubuntu1~18.04) version 7.3.0 (x86_64-linux-gnu)
# compiled by GNU C version 7.3.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version isl-0.19-GMP
在我的系统里。的输出中也会出现这些版本字符串。
strings /usr/lib/gcc/x86_64-linux-gnu/7/cc1
但是,我可以访问gcc 4.1.2编译器,它不包括以下信息:
# GNU C version 4.1.2 20080704 (Red Hat 4.1.2-55) (x86_64-redhat-linux)
# compiled by GNU C version 4.1.2 20080704 (Red Hat 4.1.2-55).
https://stackoverflow.com/questions/55084198
复制相似问题