synergy這個軟件很有意思,前一陣淘寶買了個註冊碼,發現ARM64不支持,QAQ,然鵝,又發現,synergy的源碼是開源的,就是說,可以下載源碼自行進行編譯哦。由於synergy兩臺機器的版本要一致,所以之前買的安裝包也沒啥用了,也需要自己進行編譯了。自己動手,豐衣足食~
1.ARM上的安裝
所用的是ARM64架構,系統是Ubuntu18.04.不得不說,linux簡直太友好了,幾句話搞定,一個bug都沒有,太良心了。
git clone https://github.com/symless/synergy-core
下載源碼後,要先安裝依賴項,
sudo apt install qtcreator qtbase5-dev cmake make g++ xorg-dev libssl-dev libx11-dev libsodium-dev libgl1-mesa-glx libegl1-mesa libcurl4-openssl-dev libavahi-compat-libdnssd-dev qtdeclarative5-dev libqt5svg5-dev libsystemd-dev
安裝完畢後,就可以進行編譯了
cd Projects/synergy
mkdir build
cd build
cmake ..
make
2.WIN10下的安裝以及編譯
不怎麼友好,首先,需要安裝一摞子軟件
- 安裝Git
- Visual Studio Professional
- Windows 10 SDK ,選擇下載,前兩個屏幕使用默認選項,最後功能界面,勾選除了調試工具外的所有選項
- Bonjour
- Qt,安裝的時候選擇 Qt 5.12.5,並且將’Qt\Tools\QtCreator\bin’加進環境變量PATH中
- CMake,同樣將’\bin’文件夾加到環境變量中
- 重啓Qt
- 選擇
CMAKE_PREFIX_PATH
環境變量爲’Qt\5.12.5\msvc2017_64’
cd Projects\synergy
mkdir build
cd build
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
cmake -G "Visual Studio 14 2015 Win64" -DCMAKE_BUILD_TYPE=Debug ..
msbuild synergy-core.sln /p:Platform="x64" /p:Configuration=Debug /m
cd ..
copy ext\openssl\windows\x64\bin\* build\
編譯時出現錯誤
CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: DNSSD_LIB linked by target "synergy" in directory E:/Git/code/synergy-core/src/gui
需將Bonjour SDK for Windows v3.0這個程序安裝後的文件夾中,找到安裝路徑上名爲Bonjour SDK的文件夾,之後到\Lib\x64下面能看到兩個文件,將這兩個文件copy到\synergy-core\src\gui路徑下面,
編譯好之後使用
- 將
synergy-core/ext/openssl/windows/x64/bin/*
複製到{build_folder}/bin/
目錄下 - 將
{QtInstallDir}/{Version}/MSVC2017_64bit/bin/
下的
Qt5Core.dll
Qt5Gui.dll
Qt5Network.dll
Qt5Widgets.dll
Qt5Cored.dll
Qt5Guid.dll
Qt5Networkd.dll
Qt5Widgetsd.dll
拷貝到{build_folder}/bin/
目錄下
運行 synergy
出現問題:
ipc connection error, connection refused
原因是synergy服務沒有啓動,cmd到該目錄下,synergyd -f
,啓動服務後解決問題
也可以直接設置成.bat文件運行,
cmd /k "cd /d D:\Program Files (x86)\synergy-core\build\bin\Debug"&&synergyd -f
注:在啓動之前要在服務器端,配置中添加上另一塊屏幕,不然總是報錯……
3.Ubuntu 從命令行啓動
從命令行啓動synergy的設置方法
在目錄/usr/local/bin
裏面創建一個指向synergy安裝目錄~/home/tools/synergy-core/build/bin
的符號鏈接:(非默認安裝需替換安裝路徑)
sudo ln -s ~/home/tools/synergy-core/build/bin/synergy /usr/local/bin/synergy