Md.*_*que 5 gcc compiler-errors compilation archlinux
截至目前,我的 archlinux 系统需要当前版本的 gcc (8.3) 以及 gcc 7.2 和 gcc 5.5(在其他路径中)。
我正在尝试编译源代码,如下所示:
$ ./contrib/download-prerequisites
Run Code Online (Sandbox Code Playgroud)
在构建目录中:
$ ../gcc-5.5.0/configure --prefix=/home/mjonyh/bin/gcc/5.5.0 --disable-multilib --enable-languages=c,c++,fortran
Run Code Online (Sandbox Code Playgroud)
比发现错误
sys/ustat.h: no such file or directory
Run Code Online (Sandbox Code Playgroud)
已安装: binutils gcc-libs libmpc gcc-ada libmpc dejagnu inetutils lib32-gcc-libs doxygen gcc-ada lib32-glibc
更新:我通过手动注释掉gcc-xxx/libsanitizer/sanitizer-common/sanitizer-platform-limits-posix.cc中的 ustat.h解决了该问题(行号 157 和 250)。因为archlinux 弃用了glibc 中的ustat.h。
glibc 2.28 的发行说明是这样说的:
- 过时的函数
ustat不再适用于新链接的二进制文件;标题<ustat.h>并<sys/ustat.h>已被删除。该函数已被弃用,取而代之的是fstatfs和statfs。
为了构建 GCC 5.5,您有以下几种选择:
ustat只是偶然添加到 Go 中,它的弃用早于 Go 开发的开始,甚至可能是 Google 作为一家公司的开始。)--enable-languages=使用合适的调用参数禁用 gccgo 前端configure。| 归档时间: |
|
| 查看次数: |
9422 次 |
| 最近记录: |