作为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

  1. Install XCode with xcode build tools
  2. Install Homebrew
  3. Build RDM dependencies cd ./src && ./configure
  4. Install Qt 5.9
  5. Open ./src/rdm.pro in Qt Creator
  6. 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

mac版rdm的编译相关推荐

  1. mac版源码编译安装mysql

    mac版源码编译安装mysql 一.基础环境 1.清理环境(清理系统自带的Mariadb和boost) CentOS 7 版本的系统默认自带安装了MariaDB,需要先清理. ##查询已安装的mari ...

  2. mac版smali2java_Android反编译apk并重新打包签名(Mac环境)

    工具下载 根据apktool网站提示的下载方法,右击wrapper script,链接存储为apktool,不要带拓展名 然后点击find newest here下载apktool.jar,选择第一个 ...

  3. ios怎么安装python3.7_Python3、PyCharm的安装及使用方法(Mac版)

    Python3.PyCharm的安装及使用方法(Mac版) 进入Python官网,点击Latest右侧的链接进入,找到底部的Files,下载适合自己的安装文件,我装的是Python3.7.4. 下载好 ...

  4. 在 Mac 上为 Android 编译 WebRTC

    在 Mac 上为 Android 编译 WebRTC 的基本流程和在任意平台上编译任何其它目标平台的 WebRTC 大体一致,但在 Mac 上为 Android 编译 WebRTC 不是 WebRTC ...

  5. Q106:Mac系统下安装编译PBRT-V3

    Mac和Linux比较类似,所以,"Mac系统下安装编译PBRT-V3"和"Linux系统下安装编译PBRT-V3"是非常相似的. 基于"Q106:L ...

  6. Apktool|ShakaApktool 简体中文汉化版|APK反编译工具(更新)

    Apktool|ShakaApktool 简体中文汉化版|APK反编译工具 ShakaApktool源码:https://github.com/rover12421/ShakaApktool 作者:r ...

  7. 独立钻石C语言Mac,C Code Develo‪p for Mac-C Code Develo‪p Mac版下载 V1.0-PC6苹果网

    C Code Develo‪p Mac版是Mac电脑上的一款开发软件.C Code Develo‪p Mac版可以帮助用快速编写.运行C语言程序,轻便的编写和测试C语言代码. 软件特色 附带一些数据结 ...

  8. Android Studio2.0 教程从入门到精通MAC版 - 安装篇

    来自:http://www.open-open.com/lib/view/open1466430392743.html 前言 这个教程你将学会如何使用Android Studio2.0开发Androi ...

  9. Mac版下实现51单片机进行开发的环境搭建

    目录 前言 简单介绍一下51单片机吧 一.安装homebrew 二.内核编译器 sdcc 安装 三.安装CH341驱动 四.烧录程序stcgal的安装 1.python3下载安装并配置环境 2.验证是 ...

最新文章

  1. 让iis7.5显示php错误的详细信息~
  2. python 解析XML xml.dom
  3. Linux后台进程管理以及ctrl+z(挂起)、ctrl+c(中断)、ctrl+\(退出)和ctrl+d(EOF)的区别
  4. 1月6日 作业 穷举
  5. Windows下C/C++获取当前系统时间
  6. 电子商务公司的职能架构及基础岗位职能
  7. MongoDB数据库(二):增删查改
  8. .net获取当前网址url
  9. elasticsearch 请求全部数据
  10. Android--使用开源vitamio做万能视频播放器
  11. ps怎么撤销参考线_ps打开辅助线的快捷键在哪,ps如何取消辅助线
  12. 【产品设计-小程序】小胖工具箱系列—汇率换算
  13. 常见的平面设计风格有哪些?
  14. Xshell复制粘贴快捷键设置
  15. TD-SCDMA牵动3G牌照发放 重塑中国电信生态
  16. html5 手绘效果,浅谈基于Canvas的手绘风格图形库Rough.js
  17. Java 交互小实例:(ATM机模拟、饮料自助机模拟)
  18. 腾讯全民wifi如何?
  19. 从单核CPU系统角度看并发问题
  20. 【2020年高被引学者】 孙剑 旷视科技

热门文章

  1. 轮廓仪 wyko matlab,VEECO光学轮廓仪
  2. sklearn实战-----5.逻辑回归与评分卡
  3. Web Workers - (Worker(专有) and SharedWorker(共享))
  4. mysql产品型号_三:MySQL系列之SQL查询
  5. 各种常见漏洞以及解析
  6. 【瑞萨RA_FSP】DMAC/DTC编程实战
  7. 中国科学技术大学计算机怎么样,中国科学技术大学计算机科学与技术学院
  8. ChatGPT对测试行业的影响(附GPT使用实战展示)
  9. android hook之 xposed检测
  10. 区块链背后的信息安全(4)RSA加解密及签名算法的技术原理及其Go语言实现