适用于Ubuntu 14.04 Trusty的libimobiledevice 1.2(iOS 8支持)

是否有支持iOS 8的最新libimobiledevice 1.2版本的PPA,或者有人可以解释如何从源代码构建它而不会弄乱一切吗?

https://launchpad.net/ubuntu/+source/libimobiledevice

使用GitHub存储库 。

请记住,每个步骤仅在上一步成功时才有效。

  1. 克隆存储库

    mkdir -p ~/src cd ~/src git clone https://github.com/libimobiledevice/libimobiledevice.git cd libimobiledevice 
  2. 安装必要的开发库

    您可能需要更多库或标头包,如下所示。 如果稍后在配置步骤中出现错误消息,您将看到此信息。 如果您遇到问题,请添加评论。

     sudo apt-get install libusbmuxd-dev libplist-dev libplist++-dev libgnutls-dev libssl-dev python-dev 
  3. 安装一些其他软件

    需要以下软件来准备软件以进行编译,然后进行编译。

     sudo apt-get install usbmuxd make automake autoconf libtool pkg-config gcc 
  4. 安装可选软件

    以下软件用于使完成的包的部分运行更快并创建文档。

     sudo apt-get install cython doxygen 
  5. 安装安装帮助程序

    Checkinstall会创建一个debian软件包,因此软件由软件包管理器管理。

     sudo apt-get install checkinstall 
  6. 配置和构建

     ./autogen.sh make 
  7. 安装

    使用下面的命令,将创建并安装名为libimobiledevice的deb软件包。

     sudo checkinstall 

    你会看到这个警告:

     checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran This software is released under the GNU GPL. ***************************************** **** Debian package creation selected *** ***************************************** *** Warning: The package version "1.2.1 1.2.1 1.2.1 1.2.1 1.2.1 1.2.1 1.2.1 1.2.1 1.2.1 1.2.1" is not a *** Warning: debian policy compliant one. Please specify an alternate one This package will be built according to these values: 0 - Maintainer: [ root@aboettger-VirtualBox ] 1 - Summary: [ Package created with checkinstall 1.6.2 ] 2 - Name: [ libimobiledevice ] 3 - Version: [ ] 4 - Release: [ 1 ] 5 - License: [ GPL ] 6 - Group: [ checkinstall ] 7 - Architecture: [ i386 ] 8 - Source location: [ libimobiledevice ] 9 - Alternate source location: [ ] 10 - Requires: [ ] 11 - Provides: [ libimobiledevice ] 12 - Conflicts: [ ] 13 - Replaces: [ ] 

    只需按3并输入1.2.1Enter

     Enter a number to change any of them or press ENTER to continue: 3 Enter new version: >> 1.2.1 
  8. 检查已安装的文件

     dpkg -L libimobiledevice 

    你会看到这样的东西

     /. /usr /usr/share /usr/share/doc /usr/share/doc/libimobiledevice /usr/share/doc/libimobiledevice/COPYING.LESSER /usr/share/doc/libimobiledevice/AUTHORS /usr/share/doc/libimobiledevice/NEWS /usr/share/doc/libimobiledevice/README /usr/share/doc/libimobiledevice/docs /usr/share/doc/libimobiledevice/docs/idevice_id.1 /usr/share/doc/libimobiledevice/docs/idevicenotificationproxy.1 /usr/share/doc/libimobiledevice/docs/idevicepair.1 /usr/share/doc/libimobiledevice/docs/ideviceprovision.1 /usr/share/doc/libimobiledevice/docs/ideviceimagemounter.1 /usr/share/doc/libimobiledevice/docs/Makefile /usr/share/doc/libimobiledevice/docs/idevicedebug.1 /usr/share/doc/libimobiledevice/docs/idevicename.1 /usr/share/doc/libimobiledevice/docs/idevicebackup.1 /usr/share/doc/libimobiledevice/docs/idevicedebugserverproxy.1 /usr/share/doc/libimobiledevice/docs/ideviceenterrecovery.1 /usr/share/doc/libimobiledevice/docs/idevicecrashreport.1 /usr/share/doc/libimobiledevice/docs/ideviceinfo.1 /usr/share/doc/libimobiledevice/docs/Makefile.in /usr/share/doc/libimobiledevice/docs/Makefile.am /usr/share/doc/libimobiledevice/docs/idevicescreenshot.1 /usr/share/doc/libimobiledevice/docs/idevicedate.1 /usr/share/doc/libimobiledevice/docs/idevicesyslog.1 /usr/share/doc/libimobiledevice/docs/idevicediagnostics.1 /usr/share/doc/libimobiledevice/docs/idevicebackup2.1 /usr/share/doc/libimobiledevice/COPYING /usr/local /usr/local/bin /usr/local/bin/idevicepair /usr/local/bin/idevicename /usr/local/bin/ideviceinfo /usr/local/bin/idevicebackup2 /usr/local/bin/ideviceprovision /usr/local/bin/idevicecrashreport /usr/local/bin/ideviceimagemounter /usr/local/bin/idevice_id /usr/local/bin/idevicenotificationproxy /usr/local/bin/ideviceenterrecovery /usr/local/bin/idevicescreenshot /usr/local/bin/idevicediagnostics /usr/local/bin/idevicedebug /usr/local/bin/idevicebackup /usr/local/bin/idevicedebugserverproxy /usr/local/bin/idevicesyslog /usr/local/bin/idevicedate /usr/local/lib /usr/local/lib/libimobiledevice.la /usr/local/lib/pkgconfig /usr/local/lib/pkgconfig/libimobiledevice-1.0.pc /usr/local/lib/libimobiledevice.so.6.0.0 /usr/local/lib/libimobiledevice.a /usr/local/share /usr/local/share/man /usr/local/share/man/man1 /usr/local/share/man/man1/idevicebackup2.1.gz /usr/local/share/man/man1/ideviceprovision.1.gz /usr/local/share/man/man1/idevicebackup.1.gz /usr/local/share/man/man1/idevicecrashreport.1.gz /usr/local/share/man/man1/idevice_id.1.gz /usr/local/share/man/man1/ideviceenterrecovery.1.gz /usr/local/share/man/man1/ideviceimagemounter.1.gz /usr/local/share/man/man1/idevicename.1.gz /usr/local/share/man/man1/idevicescreenshot.1.gz /usr/local/share/man/man1/idevicedebug.1.gz /usr/local/share/man/man1/idevicenotificationproxy.1.gz /usr/local/share/man/man1/idevicedebugserverproxy.1.gz /usr/local/share/man/man1/idevicedate.1.gz /usr/local/share/man/man1/ideviceinfo.1.gz /usr/local/share/man/man1/idevicesyslog.1.gz /usr/local/share/man/man1/idevicediagnostics.1.gz /usr/local/share/man/man1/idevicepair.1.gz /usr/local/include /usr/local/include/libimobiledevice /usr/local/include/libimobiledevice/syslog_relay.h /usr/local/include/libimobiledevice/lockdown.h /usr/local/include/libimobiledevice/diagnostics_relay.h /usr/local/include/libimobiledevice/screenshotr.h /usr/local/include/libimobiledevice/property_list_service.h /usr/local/include/libimobiledevice/installation_proxy.h /usr/local/include/libimobiledevice/restore.h /usr/local/include/libimobiledevice/file_relay.h /usr/local/include/libimobiledevice/mobile_image_mounter.h /usr/local/include/libimobiledevice/mobilebackup2.h /usr/local/include/libimobiledevice/afc.h /usr/local/include/libimobiledevice/service.h /usr/local/include/libimobiledevice/webinspector.h /usr/local/include/libimobiledevice/heartbeat.h /usr/local/include/libimobiledevice/libimobiledevice.h /usr/local/include/libimobiledevice/mobilesync.h /usr/local/include/libimobiledevice/misagent.h /usr/local/include/libimobiledevice/debugserver.h /usr/local/include/libimobiledevice/mobilebackup.h /usr/local/include/libimobiledevice/house_arrest.h /usr/local/include/libimobiledevice/sbservices.h /usr/local/include/libimobiledevice/notification_proxy.h /usr/local/lib/libimobiledevice.so /usr/local/lib/libimobiledevice.so.6 

这就是我为构建libimobiledevice-1.2.0所做的工作:

  1. 安装构建工具和依赖项

     sudo apt-get install build-essential fakeroot devscripts pbuilder sudo apt-get build-dep libimobiledevice 
  2. 下载当前打包版本的源代码和Debian构建脚本(Ubuntu 14.04上的1.1.5):

     apt-get source libimobiledevice cd libimobiledevice-1.1.5 
  3. 扫描并下载新的上游版本:

     uscan --verbose 
  4. 解压缩,将Debian构建脚本放到位并更新更改日志:

     uupdate ../libimobiledevice_1.2.0.orig.tar.bz2 cd ../libimobiledevice-1.2.0 
  5. 构建二进制包(与可用CPU核心的工作数量并行):

     debuild -b -j$(getconf _NPROCESSORS_ONLN) 

    -j指示构建系统并行运行单个构建任务,如果可能的话。由于这有时会导致问题,因此尝试在没有该标志的情况下重新运行构建或首先删除它可能是值得的。)

  6. 安装内置包:

     sudo dpkg -i ../libimobiledevice_1.2.0*.deb 

其实我骗了一下。 我无法满足构建依赖项,因为在Ubuntu 14.04中的库中没有足够的最新版本:libimobiledevice-1.2.0需要libusbmuxd-dev (>= 1.0.9) ,所以你必须从首先使用相同的配方来源。

好的,这对我有用。

订单是:

 libplist -> libusbmuxd -> libimobiledevice -> usbmuxd, ifuse, ideviceinstaller, ... 

资料来源: https : //github.com/libimobiledevice/usbmuxd/issues/10

 mkdir -p ~/src cd ~/src sudo apt-get -y install libusbmuxd-dev libplist-dev libplist++-dev libgnutls-dev libssl-dev usbmuxd make automake autoconf libtool pkg-config gcc cython doxygen checkinstall libusb-1.0-0-dev libssl-dev git clone https://github.com/libimobiledevice/libplist.git cd libplist/ ./autogen.sh make sudo make install cd .. git clone https://github.com/libimobiledevice/libusbmuxd.git cd libusbmuxd/ ./autogen.sh make sudo make install cd .. git clone https://github.com/libimobiledevice/libimobiledevice.git cd libimobiledevice/ ./autogen.sh make sudo checkinstall 

checkinstall提示符下:

 > y[ENTER] > [ENTER] > 3[ENTER] > 1.2.1[ENTER] > [ENTER] 

我使用这个PPA,它有最新的libimobiledevice,但并不是所有组件都在那里代表: https ://launchpad.net/~martin-salbaba/+archive/ubuntu/ppa+libimobiledevice

16.04将有1.2。 我可以从启动板下载debs( https://launchpad.net/ubuntu/xenial/+source/libimobiledevice )并在15.10上安装它们。 我需要libusbmuxd4libimobiledevice6libimobiledevice-dev 。 然后按照以下说明安装ifuse 1.1.3: https ://askubuntu.com/a/691758