上海兆芯及麒麟v10下编译redis过程记录

 本来以为是x86指令集,编译个redis还不是闭着眼睛敲指令就完事的事,结果还真是需要处理一下,以下为编译过程记录:

1.编译redis 6

    上来就先报错.../deps/jemalloc/lib/libjemalloc.a:没有那个文件或目录

    查了一下这个真不是国产处理器的锅,网上也有好多人遇到了这个问题,只不过不是在国产处理下出现的,结合前面测试的龙芯下的编译过程,直接怀疑config.guess和config.sub两个文件在搞鬼,先换掉再说。

   make clean,再次make ,还是提示这个错误,我去,龙芯都编的过去,x86居然敢出难题。

   直接进jemalloc目录,./configure ,make -j 16 单独编译看你咋说,结果可以单独编译成功。

  回到redis目录,再次编译,还是报错:

 那就索性把deps下面的都提前编译了吧:

cd deps

make hiredis lua jemalloc linenoise -j 16

编译依赖全部成功

回到redis目录,再次make -j 16 ,编译成功!

 比较可怕的是网上也不知道是爬虫爬的垃圾文章到处都是,还是没人塌下心来研究,都是告诉你编译jemalloc不成功,那就配置用MALLOC=libc的方式,哎。

2.编译redis 7

  没有更换config.guess和config.sub文件,上来直接去deps目录make hiredis lua jemalloc linenoise -j 16 ,回到redis目录make -j 16 直接成功。

3.配置

make install
mkdir -p /etc/redis/conf
cp ./redis.conf /etc/redis/conf
vi /etc/redis/conf/redis.conf

#修改监听ip
bind 0.0.0.0 -::*
#修改dir ./为 dir /var/lib/redis 并记好这个路径
dir /var/lib/redis
#设置为systemd启动
supervised systemd
#创建为系统服务
vi /lib/systemd/system/redis.service
 
复制以下内容进去
 
Description=Redis In-Memory Data Store                       
After=network.target                                         
                                                             
[Service]                                                    
User=redis                                                   
Group=redis                                                  
Environment=statedir=/run/redis                              
PermissionsStartOnly=true                                    
PIDFile=/run/redis/redis.pid                                 
ExecStartPre=/bin/touch /var/log/redis.log                   
ExecStartPre=/bin/chown redis:redis /var/log/redis.log       
ExecStartPre=/bin/mkdir -p ${statedir}                       
ExecStartPre=/bin/chown -R redis:redis ${statedir}           
ExecStart=/usr/local/bin/redis-server /etc/redis/conf/redis.conf --supervised systemd 
ExecStop=/usr/local/bin/redis-cli shutdown                   
ExecReload=/bin/kill -USR2 $MAINPID                          
Restart=always                                               
RestartSec=3                                                 
                                                             
[Install]                                                    
WantedBy=multi-user.target   

创建用户及组这块和龙芯下面的配置过程有点不一样

groupadd redis
adduser --system -g redis --no-create-home redis
sudo mkdir -p /var/lib/redis 
sudo chown redis:redis /var/lib/redis
sudo chmod 770 /var/lib/redis
sudo chown redis:redis -R /etc/redis
systemctl daemon-reload
systemctl enable redis
systemctl start redis

 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

peihexian

你的鼓励是我创作的动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值