# libimobiledevice-win32-patchs **Repository Path**: zerokwok/libimobiledevice-win32-patchs ## Basic Information - **Project Name**: libimobiledevice-win32-patchs - **Description**: 基于 libimobiledevice 官方仓库的 win32 补丁集合,允许官方原版代码可以在 CMake & MSVC 环境下通过编译。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-05-20 - **Last Updated**: 2026-02-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # libimobiledevice-win32-patchs 这是一个基于 [libimobiledevice](https://github.com/libimobiledevice) 官方仓库的 win32 补丁集合,允许官方原版代码可以在 CMake & MSVC 环境下通过编译。 **注意:** 本仓库仅做 MSVC 环境兼容的相关操作, 确保应用补丁后可以正确通过编译以及正常的运行主要功能,而不会修改来自上游的问题。 第一版补丁自 vcpkg 的相关 ports 修改而来。 ## 补丁支持状态 Update to 2026-02-04 ```md # idevicerestore - 74e3bd9(2025-11-24 01:29:18) - endianness.h: Default to little endian # libimobiledevice - c4f1118(2025-11-27 15:42:55) - afcclient: Fix text echoing on Windows # libimobiledevice-glue - da770a7(2025-11-24 01:29:57) - endianness.h: Default to little endian # libirecovery - b59ef48(2025-10-17 19:31:32) - Update NEWS for release # libplist - b7f09cc(2026-01-29 17:45:01) - xplist: Improve robustness of XML text parsing and value conversion # libtatsu - 60a39f3(2025-09-22 22:56:37) - tss: Update client version and add Ap,Timestamp # libusbmuxd - 93eb168(2025-09-08 00:15:01) - Add FUNDING ``` ## 构建需要 - 安装最新的 vcpkg - git bash - rsync - CMake 3.20 and later (支持 CMakePresets.json) - Visual Studio 2019 and later ## 构建步骤 1. **克隆仓库并应用补丁:** ```bash git clone --recursive https://github.com/ZeroKwok/libimobiledevice-win32-patchs.git cd libimobiledevice-win32-patchs ./patch.sh # entry y ``` 1. **安装依赖:** ```bash vcpkg install ``` 1. **配置 vcpkg 位置:** 创建 `CMakeUserPresets.json` 文件(不在版本控制中),内容如下: ```json { "version": 2, "configurePresets": [ { "name": "msvc14.2-x86-user", "inherits": "msvc14.2-x86", "environment": { "VCPKG_ROOT": "你的vcpkg路径" } } ] } ``` 1. **使用 CMake Presets 构建:** ```bash mkdir build -p cmake --preset=msvc14.2-x86-user -B build . cmake --build build --config RelWithDebInfo cmake --install build --config RelWithDebInfo ``` **说明:** - `vcpkg.json` 定义了项目依赖,使用 vcpkg 清单模式自动安装依赖 - `CMakePresets.json` 提供了标准的构建配置 - `CMakeUserPresets.json` 用于配置本地 vcpkg 路径,不会被提交到版本控制