rt,本人需要升级一下 CentOS Linux release 7.3.1611 (Core) 的 glibc.
尝试了网上的办法,首先尝试安装 glibc-2.25, 其中在执行 make 时出现如下错误:
trftime_l.c: In function ‘__strftime_internal’:
strftime_l.c:719:4: error: macro expands to multiple statements [-Werror=multistatement-macros]
digits = d > width ? d : width; \
^~~~~~
strftime_l.c:1260:6: note: in expansion of macro ‘DO_NUMBER’
DO_NUMBER (1, tp->tm_year + TM_YEAR_BASE);
^~~~~~~~~
strftime_l.c:1259:4: note: some parts of macro expansion are not guarded by this ‘else’ clause
else
make[2]: *** [../o-iterator.mk:9: /root/tmp2/glibc-2.25/build2/time/strftime_l.o] Error 1
make[2]: Leaving directory '/root/tmp2/glibc-2.25/time'
make[1]: *** [Makefile:215: time/subdir_lib] Error 2
make[1]: Leaving directory '/root/tmp2/glibc-2.25'
目测无法解决,搜索无解,opengpt未解决问题。
转而求其次,编译安装 glibc-2.17, 在 configure 时出现问题,提示 make 的版本过低:
...
checking for gmake... gmake
checking version of gmake... 4.4, bad
...
configure: error:
*** These critical programs are missing or too old: make
*** Check the INSTALL file for required versions.
在 INSTALL 中发现,此版本要求的 make 版本为 3.79 或更高:
* GNU `make' 3.79 or newer
You need the latest version of GNU `make'. Modifying the GNU C
Library to work with other `make' programs would be so difficult
that we recommend you port GNU `make' instead. *Really.* We
recommend GNU `make' version 3.79. All earlier versions have
severe bugs or lack features.
以上是情况描述。
问题:
make 版本问题,我是需要 3.x 版本的 make 么?求解答。最近登不上 stackoverflow .