redis 6 安装报错,需要升级gcc

    技术2023-06-06  83

    部分错误代码:

    server.c: In function ‘main’: server.c:5011:11: error: ‘struct redisServer’ has no member named ‘sentinel_mode’ server.sentinel_mode = checkForSentinelMode(argc,argv); ^ server.c:5028:15: error: ‘struct redisServer’ has no member named ‘sentinel_mode’ if (server.sentinel_mode) { ^ server.c:5095:19: error: ‘struct redisServer’ has no member named ‘sentinel_mode’ if (server.sentinel_mode && configfile && *configfile == '-') { ^ server.c:5117:168: error: ‘struct redisServer’ has no member named ‘sentinel_mode’ serverLog(LL_WARNING, "Warning: no config file specified, using the default config. In order to specify a config file use %s /path/to/%s.conf", argv[0], server.sentinel_mode ? "sentinel" : "redis"); ^ server.c:5122:11: error: ‘struct redisServer’ has no member named ‘supervised’ server.supervised = redisIsSupervised(server.supervised_mode); ^ server.c:5122:49: error: ‘struct redisServer’ has no member named ‘supervised_mode’ server.supervised = redisIsSupervised(server.supervised_mode); ^ server.c:5123:28: error: ‘struct redisServer’ has no member named ‘daemonize’ int background = server.daemonize && !server.supervised; ^ server.c:5123:49: error: ‘struct redisServer’ has no member named ‘supervised’ int background = server.daemonize && !server.supervised; ^ server.c:5127:29: error: ‘struct redisServer’ has no member named ‘pidfile’ if (background || server.pidfile) createPidFile(); ^ server.c:5132:16: error: ‘struct redisServer’ has no member named ‘sentinel_mode’ if (!server.sentinel_mode) { ^ server.c:5142:19: error: ‘struct redisServer’ has no member named ‘cluster_enabled’ if (server.cluster_enabled) { ^ server.c:5150:19: error: ‘struct redisServer’ has no member named ‘ipfd_count’ if (server.ipfd_count > 0 || server.tlsfd_count > 0) ^ server.c:5150:44: error: ‘struct redisServer’ has no member named ‘tlsfd_count’ if (server.ipfd_count > 0 || server.tlsfd_count > 0) ^ server.c:5152:19: error: ‘struct redisServer’ has no member named ‘sofd’ if (server.sofd > 0) ^ server.c:5153:94: error: ‘struct redisServer’ has no member named ‘unixsocket’ serverLog(LL_NOTICE,"The server is now ready to accept connections at %s", server.unixsocket); ^ server.c:5154:19: error: ‘struct redisServer’ has no member named ‘supervised_mode’ if (server.supervised_mode == SUPERVISED_SYSTEMD) { ^ server.c:5155:24: error: ‘struct redisServer’ has no member named ‘masterhost’ if (!server.masterhost) { ^ server.c:5168:15: error: ‘struct redisServer’ has no member named ‘maxmemory’ if (server.maxmemory > 0 && server.maxmemory < 1024*1024) { ^ server.c:5168:39: error: ‘struct redisServer’ has no member named ‘maxmemory’ if (server.maxmemory > 0 && server.maxmemory < 1024*1024) { ^ server.c:5169:176: error: ‘struct redisServer’ has no member named ‘maxmemory’ serverLog(LL_WARNING,"WARNING: You specified a maxmemory value that is less than 1MB (current value is %llu bytes). Are you sure this is what you really want?", server.maxmemory); ^ server.c:5172:31: error: ‘struct redisServer’ has no member named ‘server_cpulist’ redisSetCpuAffinity(server.server_cpulist);

    部分错误截图:

    原因:

    centos 7 直接安装redis6。报错了,需要升级GCC 版本

    #升级到 5.3及以上版本 yum -y install centos-release-scl yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils scl enable devtoolset-9 bash #注意:scl命令启用只是临时的,推出xshell或者重启就会恢复到原来的gcc版本。 #如果要长期生效的话,执行如下: echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
    Processed: 0.011, SQL: 9