Ubuntu – libimobiledevice 1.2 (iOS 8 Support) for Ubuntu 14.04 Trusty

iosppa

Is there a PPA available for the most recent libimobiledevice 1.2 version with support for iOS 8 or can someone explain how to build it from source without messing up everything?

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

Best Answer

  • Using the GitHub repository.

    Bear in mind, each step works only if the previous step was successful.

    1. Clone the repository

      mkdir -p ~/src
      cd ~/src
      git clone https://github.com/libimobiledevice/libimobiledevice.git
      cd libimobiledevice
      
    2. Install the necessary development libraries

      You may need more libraries or header packages as listed below. You will see this if you have error messages during the configuration step later. Add a comment if you have problems.

      sudo apt-get install libusbmuxd-dev libplist-dev  libplist++-dev libgnutls-dev libssl-dev python-dev
      
    3. Install some additional software

      The following software is needed to prepare the software for compilation and then compile it.

      sudo apt-get install usbmuxd make automake autoconf libtool pkg-config gcc
      
    4. Install optional software

      The following software is used to make parts of the finished package a run faster and create documentation.

      sudo apt-get install cython doxygen
      
    5. Install an installation helper

      Checkinstall creates a debian package so the software is managed by the package manager.

      sudo apt-get install checkinstall
      
    6. Configure and build

      ./autogen.sh
      make
      
    7. Install

      With the command below, a deb package with the name libimobiledevice will be created and installed.

      sudo checkinstall
      

      You will see this warning:

      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: [  ]
      

      Simply press 3 and type 1.2.1 and Enter

      Enter a number to change any of them or press ENTER to continue: 3
      Enter new version: 
      >> 1.2.1
      
    8. Check the installed files

      dpkg -L libimobiledevice
      

      and you will see something like this

      /.
      /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