文章目錄
在 macOS 上 Build Redis Desktop Manager(RDM)
Redis 是套 in-memory 的 key-value databse,也被現在許多稍具規模系統拿來當做 cache 層以減輕 application cluster 直接大量存取 database 壓力,相信許多開發人員都認識它
Redis 在安裝時就內建了 redis-cli 可以用來執行 redis 相關指令,只是一旦 server 多了起來光連線管理就令人頭痛,而 Redis Desktop Manager(RDM) 就是套簡單易用的 GUI Redis 管理工具,加上支援跨平台,使用體驗在各個平台上相當一致,更是方便
只是 Redis Desktop Manager 官網 上已不提供直接下載連結,而是改採付費訂閱的模式,所幸 Redis Desktop Manager 是 open source 起家還可以自行透過 build source code 來取得,而我在 mac 上 build Redis Desktop Manager 時可以說是阻礙重重,於是紀錄一下避免日後又 build 不起來XD
基本環境說明
- macOS Mojave 10.14.2
- XCode 10.1
- Qt 5.12.0
- Qt Creator 4.8.1
安裝基本工具
安裝 XCode
透過 APP Store 搜尋並安裝 XCode
安裝 homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
透過 homebrew 安裝 git
brew install git
透過 homebrew 安裝 qt
brew install qt
透過 homebrew 安裝 qt-creator
brew cask install qt-creator
編譯 Redis Desktop Manager
下載 source code
下載 Redis Desktop Manager 及相關 submodule 至
rdm
資料夾並切換工作目錄至rdm
git clone --recursive https://github.com/uglide/RedisDesktopManager.git -b 0.9 rdm && cd ./rdm ```` 2. 透過 Info.plist.sample 建立 `Info.plist`
bash cd ./src && cp ./resources/Info.plist.sample ./resources/Info.plist
3. build
bash ./configure ```
錯誤 一:找不到 Xcode
錯誤訊息
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
錯誤截圖
解決方式
Xcode 安裝位置與 rdm 使用的位置有差異,將路徑修改至
/Applications/Xcode.app/Contents/Developer
(實際 Xcode 安裝位置)sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
錯誤 二:不再支援 macOS 10.6 之前版本
錯誤訊息
error 3rdparty/gbreakpad/src/client/mac/sender/Breakpad.xib:global: error: Compiling for earlier than macOS 10.6 is no longer supported.
錯誤截圖
解決方式
- 方法一:將 Xcode 降版至 10,不要用最新版
方法二:不降版,使用 Xcode 開啟並修改
rdm/3rdparty/gbreakpad/src/client/mac/sender/Breakpad.xib
錯誤 三:Error: openssl not installed
錯誤訊息
Error: openssl 1.0.2q already installed Warning: openssl 1.0.2q is already installed and up-to-date To reinstall 1.0.2q, run `brew reinstall openssl`
錯誤截圖
解決方式
沒有解決但仍能順利 build rdm
- 透過 Qt Creator 開啟 rdm.pro
如果遇到以下問題可以參考說明的解決方式
No valid kits found.
failed to parse default search paths from compiler output
解決方式可以參考 在 macOS 上的 Qt Creator 中出現 failed to parse default search paths from compiler output
- 修改 rdm.pro
未修改只能產生 exec 檔,修改完產生的 app 檔才能拉進 application 中正常執行
將下列兩者註解
debug: CONFIG-=app_bundle
crashreporter
release { CRASHREPORTER_APP.files = $$DESTDIR/crashreporter CRASHREPORTER_APP.path = Contents/MacOS QMAKE_BUNDLE_DATA += CRASHREPORTER_APP }
將會產生
rdm.app
在 /rdm/bin/osx/debug/
中- 將所有 debug 內容與 crashreporter 內容都註解掉
將會產生
rdm.app
在 /rdm/bin/osx/release/
中心得
原本只是抱著工程師順手 build 個工具來自用是理所當然的浪漫,但想不到比預期多花了許多時間,當然其中有一部份是不熟悉 macos 的行為,另一大部份則是不了解 Qt 開發特性的關係,只是經過這次改天如果還需要自己 build 什麼工具我還真的會認真考慮一下XD
參考資訊
文章作者 Yowko Tsai
上次更新 2021-11-03
授權合約
本部落格 (Yowko's Notes) 所有的文章內容(包含圖片),任何轉載行為,必須通知並獲本部落格作者 (Yowko Tsai) 的同意始得轉載,且轉載皆須註明出處與作者。
Yowko's Notes 由 Yowko Tsai 製作,以創用CC 姓名標示-非商業性-相同方式分享 3.0 台灣 授權條款 釋出。