error: missing binary operator before token "(" 44 | #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE)
手痒,在centos7上面,升级了glibc,然后导致正常程序编译都出现了问题。
这是编译的报错:
/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/os_defines.h:44:19: error: missing binary operator before token "(" 44 | #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE)
不知道是哪里出了问题。如果有人知道,可以下面留个言
#查看版本号
ldd --version
[henry@192 build]$ rpm -q glibc
## centos7自带版本
glibc-2.17-157.el7.x86_64
## 升级后的版本
glibc-2.17-326.el7_9.x86_64
### 编译程序报错了:
/opt/rh/devtoolset-9/root/usr/include/c++/9/x86_64-redhat-linux/bits/os_defines.h:44:19: error: missing binary operator before token "("
44 | #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE)
### 编译程序报错了:
/opt/rh/devtoolset-10/root/usr/include/c++/10/x86_64-redhat-linux/bits/os_defines.h:44:19: error: missing binary operator before token "("
44 | #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE)
| ^
/opt/rh/devtoolset-10/root/usr/include/c++/10/x86_64-redhat-linux/bits/os_defines.h:52:19: error: missing binary operator before token "("
52 | #if __GLIBC_PREREQ(2, 27)