作为redis的gui客户端rdm还是蛮好用的,可是官方提供的mac编译版本需要赞助费用,中国人都有个习惯不喜欢在软件上付费,能找到破解就破解的,实在不行自己来动手搞个免费,本人呢是出于对qt c++的兴趣,另外还有一点是公司的redis是2.4版本,然后运维自己定制加入了高版本的scan功能,可是官方蛋疼的是低于2.8版本(可以看源码connetion.cpp)就抛不支持scan命令的异常,so自己动手编译一个,并对源码进行小修改。之前本人在网上逛了一圈,有人说rdm官方提供的mac编译方法说得不够仔细,导致很难编译通过。经过我的小实验,事实上还算顺利完成。废话不多说,言归正传。
1、首先依据官方的说明
http://docs.redisdesktop.com/en/latest/install/#build-from-source
Build on OS X
- Install XCode with xcode build tools
- Install Homebrew
- Build RDM dependencies
cd ./src && ./configure
- Install Qt 5.9
- Open ./src/rdm.pro in Qt Creator
- Run build
一步步执行之
这里面比较耗时的就是装xcode和qt creator,需要花几个小时,需要耐心等待,当然网速快会好点
最后编译的效果如下面图示
怎么样去掉版本低于2.8的抛不支持scan的异常呢,注释掉如下行即可
2、接下来怎么样把你编译的包打包给他人使用呢?
cd
rdm/src/resources
cp Info.plist.sample Info.plist
下载 crashreporter(链接: https://pan.baidu.com/s/1htC6QpA 密码: ges8)放到如下文件夹
rdm/bin/osx/debug
编辑如下文件 vim rdm/src/rdm.pro
unix:macx { # OSX
QT += svg
CONFIG += c++11
# debug: CONFIG-=app_bundle //将这行注释掉
在qt creator中选中release,重新构建,编译完毕会在如下目录下
rdm/bin/osx/debug
生成rdm.app文件夹
接下来需要部署这个app包
切换到qt creator的安装目录执行如下命令,绑定qt的依赖包
~/Qt/5.9/clang_64/bin/macdeployqt ~/git/rdm/bin/osx/debug/rdm.app
这样就可以压缩rdm.app包分享给他人了。
运行中会出现qml的依赖找不到,怎么办?
cp -rf ~/Qt/5.9/clang_64/qml ~/git/rdm/bin/osx/debug/rdm.app/Contents/Resources/
然后就可以再分享出去了
接着发现在他人mac上打不开,在命令行下执行看日志,自行百度解决即可,一般会出现openssl lib不兼容,重新安装即可
用命令行的方式启动
下载下文提供的压缩包并解压后,
执行
你的目录/rdm.app/Contents/MacOS/rdm
启动过程如果报如下错误:
dyld: Library not loaded: /usr/local/Cellar/openssl/1.0.2n/lib/libcrypto.1.0.0.dylib
直接执行如下命令:
brew uninstall openssl
brew install openssl
安装完的openssl库在如下目录
/usr/local/Cellar/openssl/1.0.2q
执行
ln -sf /usr/local/Cellar/openssl/1.0.2q /usr/local/Cellar/openssl/1.0.2n
继续执行,即可解决
附上下载链接
http://download.csdn.net/download/zhuboyan123/10262735