MPCDF集群安装Flint v3.1.2时make因_Thread_local报错求助
在MPCDF HPC集群安装FLINT v3.1.2时编译报错
我正尝试在MPCDF HPC集群的个人账户中安装v3.1.2版本的flint。已通过./configure --prefix=$HOME/software/<packagename>命令,在主目录成功安装了GMP 6.3.0和MPFR 4.2.1。
在flint目录下,按官方文档操作完成了./configure步骤,执行的命令如下:
cd flint/ ./bootstrap.sh ./configure --prefix=$HOME/software/flint/ --with-gmp-include=$HOME/software/gmp-6.3.0/include/ --with-gmp-lib=$HOME/software/gmp-6.3.0/lib/ --with-mpfr-include=$HOME/software/mpfr-4.2.1/include/ --with-mpfr-lib=$HOME/software/mpfr-4.2.1/lib/
然而,执行make步骤时,得到以下输出:
/usr/bin/mkdir -p build/generic_files CC generic_files/inlines.c CC generic_files/profiler.c CC generic_files/sprintf.c CC generic_files/fscanf.c CC generic_files/memory_manager.c In file included from ./src/thread_pool.h:15:0, from src/generic_files/memory_manager.c:18: ./src/flint.h:154:28: error: unknown type name ‘_Thread_local’ # define FLINT_TLS_PREFIX _Thread_local ^ src/generic_files/memory_manager.c:340:1: note: in expansion of macro ‘FLINT_TLS_PREFIX’ FLINT_TLS_PREFIX size_t flint_num_cleanup_functions = 0; ^ src/generic_files/memory_manager.c:340:25: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘flint_num_cleanup_functions’ FLINT_TLS_PREFIX size_t flint_num_cleanup_functions = 0; ^ In file included from ./src/thread_pool.h:15:0, from src/generic_files/memory_manager.c:18: ./src/flint.h:154:28: error: unknown type name ‘_Thread_local’ # define FLINT_TLS_PREFIX _Thread_local ^ src/generic_files/memory_manager.c:342:1: note: in expansion of macro ‘FLINT_TLS_PREFIX’ FLINT_TLS_PREFIX flint_cleanup_function_t * flint_cleanup_functions = NULL; ^ src/generic_files/memory_manager.c:342:43: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token FLINT_TLS_PREFIX flint_cleanup_function_t * flint_cleanup_functions = NULL; ^ src/generic_files/memory_manager.c: In function ‘flint_register_cleanup_function’: src/generic_files/memory_manager.c:358:5: error: ‘flint_cleanup_functions’ undeclared (first use in this function) flint_cleanup_functions = flint_realloc(flint_cleanup_functions, ^ src/generic_files/memory_manager.c:358:5: note: each undeclared identifier is reported only once for each function it appears in src/generic_files/memory_manager.c:359:10: error: ‘flint_num_cleanup_functions’ undeclared (first use in this function) (flint_num_cleanup_functions + 1) * sizeof(flint_cleanup_function_t)); ^ src/generic_files/memory_manager.c: In function ‘_flint_cleanup’: src/generic_files/memory_manager.c:380:21: error: ‘flint_num_cleanup_functions’ undeclared (first use in this function) for (i = 0; i < flint_num_cleanup_functions; i++) ^ src/generic_files/memory_manager.c:381:9: error: ‘flint_cleanup_functions’ undeclared (first use in this function) flint_cleanup_functions[i](); ^ src/generic_files/memory_manager.c: At top level: cc1: warning: unrecognized command line option "-Wno-stringop-overread" [enabled by default] cc1: warning: unrecognized command line option "-Wno-stringop-overflow" [enabled by default] Makefile:615: recipe for target 'build/generic_files/memory_manager.lo' failed make: *** [build/generic_files/memory_manager.lo] Error 1
有人能帮我找出问题所在吗?
内容的提问来源于stack exchange,提问作者Thejasvi
相关产品推荐
相关产品推荐

