libimobiledevice 笔记 二 在 Cygwin 中编译

libimobiledevice 笔记 二 在 Cygwin 中编译

版权声明:原创文章,未经授权,请勿转载

在上一篇文章 libimobiledevice 笔记 一 中, 大概介绍了下 libimobiledevice 的主要组件及关系,以及 PC 端如何与 iOS 设备建立通讯连接,还有如何在 CMake & MSVC 下进行编译与安装。

而在这里也记录下 Cygwin 下编译 libimobiledevice 的过程,主要是之前通过 Cygwin 编译过,也记录了笔记,这里稍加整理一并放出来。

  • cygwin 需要安装如下组件

    • git
    • binutils
    • dos2unix
    • autobuild
    • autoconf
    • automake
    • libtool
    • libusb1.0
    • libusb_devel
    • libssl
    • cpython
  • 编译 libplist

    git clone https://github.com/libimobiledevice/libplist.git
    cd libplist
    git config core.autocrlf false
    # git checkout v2.0.0 -b build # 直接编译 master 版
    find . -type f -print0 | xargs -0 dos2unix --
    ./autogen.sh
    make install
    
  • 编译 libimobiledevice-glue

    git clone https://github.com/libimobiledevice/libimobiledevice-glue.git
    cd libimobiledevice-glue
    git config core.autocrlf false
    # git checkout xxxx -b build # 直接编译 master 版
    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig # 检查 echo $PKG_CONFIG_PATH
    ./autogen.sh
    make install
    
  • 编译 libusbmuxd

    git clone https://github.com/libimobiledevice/libusbmuxd.git
    cd libusbmuxd
    git config core.autocrlf false
    # git checkout 2.1.0 -b build  # 直接编译 master 版
    find . -type f -print0 | xargs -0 dos2unix --
    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
    ./autogen.sh
    make install
    
  • 编译 libimobiledevice

    git clone https://github.com/libimobiledevice/libimobiledevice.git
    cd libimobiledevice
    find . -type f -print0 | xargs -0 dos2unix --
    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
    ./autogen.sh [--enable-debug]
    make install
    
  • 编译 usbmuxd

    git clone https://github.com/libimobiledevice/usbmuxd.git
    cd usbmuxd
    find . -type f -print0 | xargs -0 dos2unix --
    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
    ./autogen.sh
    make install
    

usbmuxd 笔者只编译通过了,简单跑了下遇到错误后就没有继续折腾了,应该需要修改部分代码来适配 Windows,似乎作者在 Windows 上更推荐直接使用 AppleMobileDeviceSupport。