You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Dominik Deák 4b0e2e5d86
Readme edits.
5 years ago
.github/ISSUE_TEMPLATE Updated issue templates. 5 years ago
Binaries Work on build script. 5 years ago
Documentation Work on build scripts. 5 years ago
Synergy-Core@36984104ec Work on build scripts. 5 years ago
Tools Work on script and added Tools dir. 5 years ago
.gitignore Work on script and added Tools dir. 5 years ago
.gitmodules Added git ignore and submodules. 5 years ago
buildLinux.sh Fix bug in linux script. 5 years ago
buildWindows.cmd Work on build scripts. 5 years ago
license.md Added readme and license docs. 5 years ago
readme.md Readme edits. 5 years ago

readme.md

Synergy Binaries

About

Synergy is a keyboard and mouse sharing tool for devices connected over a network. Up until version 1.8.8, binaries were freely available to download from the official project website. Since then, Synergy maintainers have decided to publish binaries behind a pay wall. However, Synergy is an open source project, and therefore anyone can build the application on their system.

This repository provides some convenience tools and documentation for building Synergy. Alternatively, one can also download the pre-compiled binaries, see below.

Download

The following binaries available in the Releases section:

  • Linux AppImage, deb packages
  • Windows MSI installer, or standalone ZIP package
  • macOS dmg packages

If you can't locate a binary package for your particular distribution, try building the project yourself.

Cloning the Repository

Preparation

Before you begin building Synergy, you need to recursively clone this project and its submodules:

  1. Clone the repository:

     git clone https://github.com/DEAKSoftware/Synergy-Binaries.git
    
  2. Update all submodules:

     cd Synergy-Binaries
     git submodule update --init --remote --recursive
    

Project Structure

The following files or directories should be of interest:

File / Directory Description
Binaries Output location for the build binaries.
Documentation Documentation for various scripts.
Synergy-Core The official Synergy Core submodule.
Tools Temporary location for build tools.
buildLinux.sh Shell script for building binaries in Linux Mint or Ubuntu.
buildWindows.cmd Command script for building binaries in Windows.

Building

Official Documentation

The information presented here is based on the official wiki pages. Anyone attempting to build Synergy should consult the official wiki pages first, particularly the following documentation:

Linux Mint / Ubuntu

Prerequisites

Install the following tools and dependencies:

sudo apt-get install \
	cmake g++ libavahi-compat-libdnssd-dev \
	libcurl4-openssl-dev libegl1-mesa \
	libgl1-mesa-glx libqt5svg5-dev libsodium-dev \
	libssl-dev libsystemd-dev libx11-dev \
	make qtbase5-dev qtcreator qtdeclarative5-dev \
	qttools5-dev xorg-dev

For building Debian packages:

sudo apt-get install build-essential devscripts dh-make lintian

Compiling (Easy Mode)

Run the shell script buildLinux.sh --all to build all packages. For other options, run with the --help switch.

Compiling (Hard Mode)

Alternatively, you can opt to build the binaries only, as detailed below. We're assuming the current path is in the Synergy-Binaries project root.

cd Synergy-Core
mkdir build
cd build

cmake .. -D CMAKE_BUILD_TYPE=MINSIZEREL -D SYNERGY_ENTERPRISE=ON

cmake --build . --parallel 8

Optional, install the application:

sudo cmake --install .

Launching Automatically

In Linux Mint we can launch synergy client automatically via System Settings → Startup Applications, then add an entry with the command:

/usr/bin/synergyc --name ClientName --daemon #.#.#.#

Substitute the ClientName with the local machine name, and the Synergy server IP #.#.#.# with whatever appropriate for your set-up.

macOS

Incomplete.

Windows

Prerequisites

  1. Install the following tools and dependencies:

    • Git for Windows
    • CMake
    • Visual Studio 2019, select the following components:
      • VS 2019 C++ x64/x86 build tools
      • Windows 10 SDK
    • WiX Toolset, install the following components:
      • WiX Toolset Build Tools
      • WiX Toolset Visual Studio 2019 Extension
    • Qt 5, select the following components:
      • Qt 5.12.9, MSVC 2017 64-bit
  2. Edit the buildWindows.cmd script and make sure the following script variables are configured properly:

    • libQtPath - Path to the Qt library, Visual C++, 64-bit build.

    • vcvarsallCommand - Path to Visual Studio's vcvarsall.bat command script, which sets compiler environment variables. See Microsoft C++ toolset documentation for details.

    • cmakeGenerator - Specifies the "generator" setting for cmake. Run cmake --help to choose the suitable generator for your current tool chain.

Compiling (Easy Mode)

Run the command script buildWindows.cmd --all to build all packages. For other options, run with the --help switch.

Compiling (Hard Mode)

Alternatively, you can opt to build the binaries only, as detailed below. We're assuming the current path is in the Synergy-Binaries project root.

cd Synergy-Core
mkdir build
cd build

call "c:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x64

cmake .. -G "Visual Studio 16 2019" -D CMAKE_PREFIX_PATH="c:\Qt\Qt5.12.9\5.12.9\msvc2017_64" -D CMAKE_BUILD_TYPE=MINSIZEREL -D SYNERGY_ENTERPRISE=ON

msbuild synergy-core.sln /p:Platform="x64" /p:Configuration=Release /m

You may need to use different paths to vcvarsall.bat and Qt libraries, whatever is appropriate for your system. Consequently, the generator -G switch for cmake must also reflect the tool chain environment. See cmake --help for details.

DEAK Software is not the maintainer of Synergy, nor is affiliated with Symless in anyway way. Bugs or issues related to the application should be reported directly on the official Synergy GitHub page.

This project is released under the MIT License.