Mac版Redis Desktop Manager编译

Redis Desktop Manager编译

本文主要讲述rdm在mac下的编译过程。

 一、下载源码

git clone --recursive https://github.com/uglide/RedisDesktopManager.git -b 0.9 rdm && cd ./rdm

这里直接按照官方的说明下载源码并切换到0.9分支。

二、安装XCode

由于较低版本的XCode带的编译工具xcodebuild可能无法编译rdm的依赖项,因此建议升级XCode,本人编译时使用的XCode为10.1。 XCode的版本也会被系统版本限制无法升级,如遇到此情况建议先升级系统。本人编译时将系统升级到macOS Mojave 10.14.2。

三、安装Homebrew

由于编译rdm需要用到其他工具或三方库,因此系统最好安装有包管理器方便下载或更新其他软件包。

 四、拷贝plist文件

cd ./src && cp ./resources/Info.plist.sample ./resources/Info.plist

五、安装依赖软件包

brew install openssl cmake

六、编译依赖项

该依赖项即包含第三方的软件包也包含源码中的部分,在编译rdm之前需要提前安装或使用XCode的工具编译,按照官方文档只需执行以下配置好的代码即可:

./configure

七、编译rdm

需要先安装Qt5.9及Qt Creator,安装完成后使用QtCreator打开src下面的rdm.pro,直接编译。

八、解决编译问题(重点)

以上步骤完全基于官方文档的说明,但是很多人按照以上步骤仍然无法完成编译工作,主要因为编译过程中出现了较多官方文档中为说明的问题,以下给出可能出现的问题及解决办法

1. xcodebuild 'quiet' 选项找不到

该问题由于XCode版本较低导致,升级XCode即可。

2. breakpad.xib无法编译

找到该文件并使用XCode打开,在XCode右侧有个Build for选项,选择高版本的macOS。

3. 找不到string.h这个头文件

遇到该问题尝试使用以下解决方式,任意一种可能都会解决该问题。

* 安装或重装XCode command line

* 清空Qt Creator的构建目录,重新编译

* 取消shadow build

4. 无法生成app boudle

该问题不影响编译,但会影响到打包,而且编译出来的rdm实际上是debug版本。正常编译一个应用程序一般都会选择release版本,因此当用Qt Creator编译rdm时,用户可能通过直接点击左下角的按钮来编译release。然而实际上rdm.pro的配置还是debug版本,因此,此时用户编译出来的还是debug版本的rdm,该rdm没有app boudle,只是生成了一个rdm的可执行程序。为了解决该问题并编译真正release版本的rdm,需要手动修改rdm.pro文件:

CONFIG -= debug

CONFIG += release

然而做了该改动之后rdm会编译报crashreporter相关的错误, 个人认为是rdm的release版本的配置出了问题(官方挖的坑?毕竟官方提供的需要订阅费)。对于该错误可直接修改rdm.pro中mac相关的配置,找到并注释掉以下代码即可:

CRASHREPORTER_APP.files = $$DESTDIR/crashreporter

CRASHREPORTER_APP.path = Contents/MacOS

至此,rdm可以完成编译运行了。

九、编译带ssh功能的rdm

官方0.9.9版本的rdm不带ssh功能,若需要使用ssh可手动切换到0.9.8. 注意保持以上修改不变。

1. 安装libssh2

brew install libssh2

2. 编译问题

2.1 无法找到-lssh2

libssh2默认安装路径为/usr/local/lib,而对于有些系统,该路径不在系统库文件的默认搜索路径中,为了找到该库文件,可以修改系统配置文件来将其添加到默认搜索路径中,这里为了简单直接在rdm.pro中添加一下代码:

LIBS += -L/usr/local/lib

2.2 编译后界面黑屏

估计也是官方挖的坑,这里之所以黑屏是Qt Quick scenegraph backend的配置导致到,在0.9.9版本中统一使用了QSGRendererInterface::Software的方式渲染界面,然后在0.9.8版本却改为了只在LINUX和WINDOWS上使用该方式,为了解决该问题只需要找到源码中Application::initQml函数并注释掉相关的预处理命令:

#if defined(Q_OS_WIN) || defined(Q_OS_LINUX) // 注释掉

QQuickWindow::setSceneGraphBackend(QSGRendererInterface::Software);

#endif // 注释掉

至此带ssh功能的0.9.8版本编译完成,并可正常运行。根据本人的运行结果显示windows和mac os的0.9.9版本的多语言切换都存在问题,只能显示英文,而0.9.8版本却是正常的,因此建议使用0.9.8版本,而且还带了ssh功能。

3. 其他问题

由于0.9.8版本不是最新版,因此程序每次运行都会弹出更新和QuickStart弹框,为了解决该问题,直接找到对应文件(app.qml中)注释掉以下代码:

Component.onCompleted: {

    if (connectionsManager.size() == 0)

        quickStartDialog.open()

}

十、参考文档

RDM官方文档

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,802评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,109评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,683评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,458评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,452评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,505评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,901评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,550评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,763评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,556评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,629评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,330评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,898评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,897评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,140评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,807评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,339评论 2 342

推荐阅读更多精彩内容

  • “世界这么大,我想去看看”,这一封曾轰动过网络的辞职信,是2015年河南实验中学的顾少强老师告别了她生活了35...
    暗香疏影手笔阅读 533评论 0 4
  • 十六岁生日那天,住在“神之围楼”,掌管海棠花的女孩椿,化作一条红色海豚,来到人间巡礼。也因此遇见了让彼此一见钟情的...
    月光映小禾阅读 553评论 0 0
  • 老公,我真的很爱你,我相信你也很爱我,所以能不能多包容我妈妈一点了,有的事情她的做法你可能不赞同,但是你要相信她也...
    丹玲_2193阅读 119评论 0 0
  • 1.今天晚上的晚餐好像是东南亚风味的土豆咖喱饭,里面还有素羊肉,虽然有点辣,但是几乎都被大家抢光;另外还配上猴头菇...
    实无所得阅读 222评论 0 0
  • 最初的记忆 我看见爷爷和奶奶坐在高台上 爷爷头发花白,脸庞泛着红光,说起话来中气十足,一点儿都不像生病的样子。 “...
    Rukiaaa阅读 186评论 0 0