5

尝试在最新版本上运行构建redis-stable(应该是 5.0.5)时出现链接器错误raspbian busterRaspberry Pi 4

make通过议案,然后失败以下

    LINK redis-server
/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

我在某处缺少设置吗?

4

2 回答 2

3

通过-latomic仅将编译器标志添加到redis-server

# redis-server                                                                                                                                                
$(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ)                                                                                                                     
        $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a ../deps/lua/src/liblua.a $(FINAL_LIBS) -latomic

编辑:这是 Redis 5.0.5

于 2019-08-19T21:54:03.623 回答
0

我能够通过仅将编译器标志 -latomic 添加到 haproxy 来运行

[错误]

/home/pi/CQ/LB/haproxy-1.8.21/src/proto_http.c:12152: undefined reference to `__atomic_fetch_add_8'
..........................................
..........................................
/usr/bin/ld: src/proto_http.o:/home/pi/CQ/LB/haproxy-1.8.21/src/proto_http.c:4200: more undefined references to `__atomic_fetch_add_8' follow
/usr/bin/ld: src/time.o: in function `tv_update_date':
/home/pi/CQ/LB/haproxy-1.8.21/src/time.c:229: undefined reference to `__atomic_compare_exchange_8'
collect2: error: ld returned 1 exit status
make: *** [Makefile:914: haproxy] error 1

[添加]

913 haproxy: $(OPTIONS_OBJS) $(EBTREE_OBJS) $(OBJS)
914          $(LD) $(LDFLAGS) -o $@ $^ $(LDOPTS) -latomic
于 2019-08-23T09:15:11.860 回答