我正在制作一个使用libimobiledevice并且是跨平台(Mac,Windows和Linux)的应用程序。我没有访问所有平台的权限,所以我自己不能编译它,这样做很痛苦。
我可以与我的应用程序一起分发的每个平台是否都有预编译的libimobiledevice版本,因此用户不必手动安装它?
答案 0 :(得分:2)
为Windows和macOS提供libimobiledevice的二进制发行版相对容易。
对于Windows和macOS,您可以从https://github.com/libimobiledevice-win32/imobiledevice-net下载libimobiledevice的预编译版本(请参见发行页面)。诚然,存储库名称有点不对。它确实为libimobiledevice提供了Windows和macOS二进制文件,如果您只想使用二进制文件,则不必使用.NET。
这些二进制文件是通过Azure Pipelines构建系统发布的,因此您可以在https://dev.azure.com/libimobiledevice-win32/imobiledevice-net/_build上获取它们,或者在可用的新版本中获取它们。
在Linux上是另一回事,因为各种Linux发行版都带有libimobiledevice某些依赖项(例如OpenSSL)的不同版本。对于大多数Linux发行版,您将需要一个不同的二进制包。
您可以使用一个PPA https://launchpad.net/~quamotion/+archive/ubuntu/ppa,它为Ubuntu 14.04、16.04和18.04提供了libimobiledevice的编译版本。 大多数Linux发行版还包含libimobiledevice软件包,但可能已过时-请注意。