键鼠共享软件Barrier编译和使用小记

(working…)

Barrier可以让多台桌面计算机,通过网络共享同一套鼠标键盘,从synergy-core项目fork而来,基于QT,支持主流桌面操作系统。

这篇文章记录Barrier的使用方法,包括编译、安装、配置。

安装

如果需要安装在Windows/MacOS上,github的release页中能找到开箱即用的exe/dmg文件。

如果需要安装在Linux下,请先尝试用各平台的包管理器安装预编译好的二进制包。另外,在Barrier的Github Repo里有包管理器列表,比如Arch系中使用pacman命令安装:

1
$ pacman -S barrier

配置

为了使用方便,如果用于日常桌面而不是专用场景(比如自动部署一群机器给客户用),建议以Barrier的GUI作为入口,修改配置灵活方便。

打开Barrier,界面很简洁:

image-20210118133913746

Barrier中的角色:

  • Server端(1台):插着键盘鼠标的电脑,是把输入设备分享给其他电脑的角色
  • Client(可以有多台):使用Server键盘鼠标的电脑

Server端配置:

编译

因为各大系统都有编译好的程序,大多数情况都不需要自己编译,所以这章放到了最后。

笔者在Nvidia的jetson(ARMv8)平台下,软件源中没有预编译好的程序所以需要自己编译,系统是Ubuntu 18.04.5 LTS

先下载解压源码包(建议先github网页中的Release里找到最新的版本),执行cmake:

1
2
3
4
5
$ wget https://github.com/debauchee/barrier/releases/download/v2.3.3/barrier-2.3.3-release.tar.gz
$ tar -xzvf barrier-2.3.3-release.tar.gz
$ cd barrier-2.3.3-release
$ mkdir build && cd build
$ cmake ..

执行cmake后,可能遇到的问题:

  • 报错Could NOT find CURL (missing: CURL_LIBRARY CURL_INCLUDE_DIR),解决方法是安装libcurl4-openssl-dev
  • 报错No package 'avahi-compat-libdns_sd' found,解决方法是安装libavahi-compat-libdnssd-dev
  • 报错Missing library: Xtst,解决方法是安装libxtst-dev
  • 报错By not providing "FindQt5.cmake" in CMAKE_MODULE_PATH解决方法是安装qt5-default

一切顺利的话,输出会是这样的:

1
2
3
4
5
6
7
8
...
...
-- Full Barrier version string is '2.3.3-release-release'
-- Configuring directory /home/mpc/barrier/barrier-2.3.3-release/build/rpm
-- Configuring file barrier.spec
-- Configuring done
-- Generating done
-- Build files have been written to: /home/mpc/barrier/barrier-2.3.3-release/build

这就表示cmake执行成功了,根据当前环境生成了可用的Makefile,接下来执行编译:

1
$ make -j3

编译可能会失败ake可能遇到的问题:

  • 报错fatal error: openssl/ssl.h: No such file or directory,解决方法是安装libssl-dev

编译成功后,执行安装,就可以算打完收工了:

1
$ sudo make install