我知道有关该主题的问题已经存在(How to Compile: Synergy on mac),但看起来旧的工具链已于2017年1月26日被更改删除。

他们现在使用cmake来处理构建,但是我未能在MacOs Sierra上正确构建它(它抱怨assert.h缺少-.-)。如果我通过在构建的include路径中添加/usr/include/来修复它,则会抱怨找不到CoreServices/CoreServices.h
达到这一点,我认为我必须丢失一些对于正确构建它至关重要的东西,但是呢?

我遵循的步骤:

git clone https://github.com/symless/synergy
cd synergy
mkdir build
cd build
cmake ..
make
# there it complains about not finding assert.h

最佳答案

您必须在cmake命令中指定CMAKE_OSX_SYSROOT。这是从Compiling · symless/synergy-core Wiki · GitHub:

cmake -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk \
      -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 \
      -DCMAKE_OSX_ARCHITECTURES=x86_64 ..

您可以保留目标的10.9不变,但是如果不同,请更改/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk以匹配系统上的实际路径。

10-08 11:36