libimobiledevice 1.2 (поддержка iOS 8) для Ubuntu 14.04 Trusty

22

Есть ли доступ к PPA для самой последней версии libimobiledevice 1.2 с поддержкой iOS 8 или кто-нибудь может объяснить, как ее построить из источника, не испортив все?

Ссылка

    
задан tristank 20.03.2015 в 00:58
источник

5 ответов

23

Используя репозиторий 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. Установить

    С помощью приведенной ниже команды будет создан и установлен пакет deb с именем libimobiledevice .

    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.1 и Enter

    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
    
ответ дан A.B. 09.09.2015 в 08:30
источник
8

Это то, что я сделал для создания libimobiledevice-1.2.0:

  1. Установить инструменты сборки и зависимости

    sudo apt-get install build-essential fakeroot devscripts pbuilder
    sudo apt-get build-dep libimobiledevice
    
  2. Загрузите сценарии сборки исходного кода и Debian в текущей упакованной версии (1.1.5 на Ubuntu 14.04):

    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. Создайте двоичный пакет (параллельно с таким количеством рабочих, как доступные ядра ЦП):

    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) , поэтому вам придется сначала создать ее из исходного кода с тем же рецептом.     

ответ дан David Foerster 04.04.2015 в 10:55
8

Хорошо, это то, что сработало для меня.

Порядок:

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

Источник: Ссылка

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]
    
ответ дан ATOzTOA 21.12.2015 в 22:41
3

Я использую этот PPA, у него последний libimobiledevice, но не все компоненты представлены там: Ссылка     

ответ дан yanpas 13.10.2015 в 13:58
1

16.04 будет иметь 1.2. Мне удалось загрузить debs с панели запуска ( Ссылка ) и установить их на 15.10. Мне нужны были libusbmuxd4 , libimobiledevice6 и libimobiledevice-dev . Затем я установил ifuse 1.1.3, выполнив следующие указания: Ссылка

    
ответ дан Aleksandr Dubinsky 13.02.2016 в 23:25