是否有人在OpenBSD 6.3上构建了gcc 8.2.0?

时间:2018-08-29 11:49:11

标签: gcc openbsd gcc8

当我尝试在OpenBSD 6.3上构建gcc 8.2.0时,出现以下错误:

/bin/sh ./libtool --tag=CC   --mode=compile /home/shane/gcc-8.2.0/host-i386-unknown-openbsd6.3/gcc/xgcc -B/home/shane/gcc-8.2.0/host-i386-unknown-openbsd6.3/gcc/ -B/opt/gcc-8.2.0/i386-unknown-openbsd6.3/bin/ -B/opt/gcc-8.2.0/i386-unknown-openbsd6.3/lib/ -isystem /opt/gcc-8.2.0/i386-unknown-openbsd6.3/include -isystem /opt/gcc-8.2.0/i386-unknown-openbsd6.3/sys-include    -DHAVE_CONFIG_H -I../.././libatomic/config/x86 -I../.././libatomic/config/posix -I../.././libatomic -I.    -march=i486 -mtune=i386 -fomit-frame-pointer -Wall -Werror   -pthread -g -O2 -MT fence.lo -MD -MP -MF .deps/fence.Tpo -c -o fence.lo ../.././libatomic/fence.c
libtool: compile:  /home/shane/gcc-8.2.0/host-i386-unknown-openbsd6.3/gcc/xgcc -B/home/shane/gcc-8.2.0/host-i386-unknown-openbsd6.3/gcc/ -B/opt/gcc-8.2.0/i386-unknown-openbsd6.3/bin/ -B/opt/gcc-8.2.0/i386-unknown-openbsd6.3/lib/ -isystem /opt/gcc-8.2.0/i386-unknown-openbsd6.3/include -isystem /opt/gcc-8.2.0/i386-unknown-openbsd6.3/sys-include -DHAVE_CONFIG_H -I../.././libatomic/config/x86 -I../.././libatomic/config/posix -I../.././libatomic -I. -march=i486 -mtune=i386 -fomit-frame-pointer -Wall -Werror -pthread -g -O2 -MT fence.lo -MD -MP -MF .deps/fence.Tpo -c ../.././libatomic/fence.c  -fPIC -DPIC -o .libs/fence.o
../.././libatomic/fence.c:26:10: fatal error: stdatomic.h: No such file or directory
 #include <stdatomic.h>
      ^~~~~~~~~~~~~
compilation terminated.
gmake[4]: *** [Makefile:491: fence.lo] Error 1
gmake[4]: Leaving directory '/home/shane/gcc-8.2.0/i386-unknown-openbsd6.3/libatomic'
gmake[3]: *** [Makefile:524: all-recursive] Error 1
gmake[3]: Leaving directory '/home/shane/gcc-8.2.0/i386-unknown openbsd6.3/libatomic'
gmake[2]: *** [Makefile:360: all] Error 2
gmake[2]: Leaving directory '/home/shane/gcc-8.2.0/i386-unknown-openbsd6.3/libatomic'
gmake[1]: *** [Makefile:21680: all-target-libatomic] Error 2
gmake[1]: Leaving directory '/home/shane/gcc-8.2.0'
gmake: *** [Makefile:943: all] Error 2

我的过程:

  • 安装OpenBSD(使用默认值)
  • 运行syspatch
  • 添加一些软件包:

    # pkg_add wget
    # pkg_add gmp mpfr libmpc
    # pkg_add gmake
    
  • 获取来源:

    $ wget ftp://ftp.nluug.nl/mirror/languages/gcc/releases/gcc-8.2.0/gcc-8.2.0.tar.gz
    $ tar xzf gcc-8.2.0.tar.gz
    $ cd gcc-8.2.0
    
  • 内部版本:

    $ ./configure --prefix=/opt/gcc-8.2.0 --with-gmp=/usr/local --enable-languages=c,c++
    $ gmake
    

这在gcc 8.1.0中也以类似的方式失败。

我还尝试使用clang而不是gcc进行构建,如下所示:

$ CC=cc CXX=c++ ./configure --prefix=/opt/gcc-8.2.0 --with-gmp=/usr/local --enable-languages=c,c++

没什么区别,这很有意义,因为它显然在第3阶段失败了(gcc再次编译以进行最终检查)。

令人讨厌的是,压缩包中有一个stdatomic.h文件:

$ find gcc-8.2.0 -name stdatomic.h                             
gcc-8.2.0/gcc/ginclude/stdatomic.h

所以我不知道我缺少什么。

有人成功构建了这个吗?怎么样?

0 个答案:

没有答案