Поэтому сегодня я попытался сделать то же самое, осознав, что сборки Kalian на их веб-сайте, а также компиляция из исходных инструкций недостаточны для Kali Linux 2017.1.
Сборка из исходного кода с их инструкциями приводит к возникновению чего-то вроде следующей ошибки, которая, вероятно, связана с другой версией OpenSSL, ожидаемой от Synergy:
Building CXX object src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o
synergy/src/lib/net/SecureSocket.cpp: In member function ‘void SecureSocket::showSecureCipherInfo()’:
synergy/src/lib/net/SecureSocket.cpp:810:46: error: invalid use of incomplete type ‘SSL {aka struct ssl_st}’
STACK_OF(SSL_CIPHER) * cStack = m_ssl->m_ssl->session->ciphers;
^~
In file included from /usr/include/openssl/crypto.h:31:0,
from /usr/include/openssl/comp.h:16,
from /usr/include/openssl/ssl.h:47,
from /root/synergy/src/lib/net/SecureSocket.cpp:27:
/usr/include/openssl/ossl_typ.h:144:16: note: forward declaration of ‘SSL {aka struct ssl_st}’
typedef struct ssl_st SSL;
^~~~~~
src/lib/net/CMakeFiles/net.dir/build.make:134: recipe for target 'src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o' failed
make[2]: *** [src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o] Error 1
CMakeFiles/Makefile2:549: recipe for target 'src/lib/net/CMakeFiles/net.dir/all' failed
make[1]: *** [src/lib/net/CMakeFiles/net.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
Going back to: /synergy
Error: make failed: 512
Следуя этой рекомендации, я обнаружил, что группа Synergy сообщила, что она исправлена в ветке v1.9 (из их ответа 15 мая 2017 года).
Оказывается, что их стабильная версия все еще находится на 1.8.8, что означает, что вам нужно установить ветку разработки 1.9.
Полная инструкция с комментариями
# Clone their git repo
git clone https://github.com/symless/synergy-core
cd synergy
# Switch to v1.9 dev branch
git checkout v1.9
# Install dependencies from their compilation guide
apt-get install build-essential cmake libavahi-compat-libdnssd-dev libcurl4-openssl-dev libssl-dev lintian python qt4-dev-tools xorg-dev fakeroot
# Install other dependencies required from CMakeLists
apt-get install libqt5xmlpatterns5-dev qtbase5-dev
# Create Makefile
cmake .
# Make and install
make
make install
# Run Synergy!
/usr/local/bin/synergy
Здесь может отсутствовать еще несколько зависимостей, но я не могу быть полностью уверен, потому что я обдумывал это довольно долго.
Наконец, добавьте приложение Synergy к своим программам запуска:
# Edit the launcher file
nano /usr/local/share/applications/synergy.desktop
# Change the path from /usr/bin to /usr/local/bin:
Path=/usr/local/bin
Exec=/usr/local/bin/synergy
Затем перезапустите GNOME с помощью Alt-F2 и введите r
. Вы должны быть в состоянии найти Synergy в лаунчере (с новой иконкой из v1.9).
РЕДАКТИРОВАТЬ: Обновлен URL репозитория GitHub с symless/ synergy до symless/synergy-core.