在Pi上安装Redis时出现问题

时间:2019-08-19 11:18:07

标签: redis raspberry-pi3 raspbian

我正在尝试在我的Pi上安装Redis。与下一个链接中的步骤相同:https://redis.io/download

$ wget http://download.redis.io/releases/redis-5.0.5.tar.gz
$ tar xzf redis-5.0.5.tar.gz
$ cd redis-5.0.5
$ make

过一会儿,将返回下一条消息->

/usr/bin/ld: networking.o: in function `createClient':
/home/pi/redis-stable/src/networking.c:109: undefined reference to `__atomic_fetch_add_8'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:219: redis-server] Error 1
make[1]: Leaving directory '/home/pi/redis-stable/src'
make: *** [Makefile:6: all] Error 2

其他方法:

#!/bin/bash
# Installing redis from tar, we need the newest for Redis Stream
rm -rf /etc/redis
mkdir -p /etc/redis
cd /etc/redis
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
tar xzf redis-5.0.3.tar.gz
cd redis-5.0.3
make cleandist
make
make install

1 个答案:

答案 0 :(得分:0)

我自己还没有遇到这个问题,但是似乎libatomic.so在我的Raspberry Pi上提供了该符号。因此,请尝试在链接器标志中添加-latomic(LDFLAGS='-latomic'用于配置项目是否使用GNU Autoconf,-DCMAKE_SHARED_LINKER_FLAGS='-latomic'用于配置cmake等)。

您可能还必须安装软件包libatomic-ops-dev(如果尚未安装)

编辑:似乎其他人也遇到了这个问题。例如,请参见以下redis错误:https://github.com/antirez/redis/issues/6275

Redis似乎也有它自己晦涩的构建系统。可以这样做:make FINAL_LIBS=-latomic,或者您可能需要修补src / Makefile才能将-latomic添加到FINAL_LIBS变量