Есть ли PPA для самой последней версии libimobiledevice 1.2 с поддержкой iOS 8, или кто-то может объяснить, как собрать его из исходного кода, не испортив все?
https: // launchpad. сеть / убунту / + исходный / libimobiledevice
Использование репозитория GitHub .
Имейте в виду, что каждый шаг работает, только если предыдущий шаг был успешным.
Клонировать репозиторий
mkdir - p ~ / src
cd ~ / src
git clone https://github.com/libimobiledevice/libimobiledevice.git
cd libimobiledevice
Установите необходимые библиотеки разработки
Вам могут потребоваться дополнительные библиотеки или пакеты заголовков, как указано ниже. Вы увидите это, если позже на этапе настройки у вас появятся сообщения об ошибках. Добавьте комментарий, если у вас возникли проблемы.
sudo apt-get install libusbmuxd-dev libplist-dev libplist ++ - разработчик libgnutls-dev libssl-dev python-dev
Установите дополнительное программное обеспечение
Следующее программное обеспечение необходимо для подготовки программного обеспечения к компиляции, а затем его компиляции.
sudo apt-get install usbmuxd make automake autoconf libtool pkg-config gcc
Установка дополнительного программного обеспечения
Следующее программное обеспечение используется для ускорения работы частей готового пакета и создания документации.
sudo apt-get install cython doxygen
Установка помощника по установке
Checkinstall создает пакет debian, чтобы программа управлялась менеджером пакетов.
sudo apt-get install checkinstall
Настройте и соберите
./ autogen.sh
сделать
Установить
С помощью приведенной ниже команды будет создан и установлен пакет deb с именем libimobiledevice
.
sudo checkinstall
Вы увидите это предупреждение:
checkinstall 1.6.2, Copyright 2009 Фелипе Эдуардо Санчес Диас Дюран
Это программное обеспечение выпущено под лицензией GNU GPL.
****************************************
**** Выбрано создание пакета Debian ***
****************************************
*** Предупреждение: версия пакета "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 "не является
*** Предупреждение: соответствует политике debian. Укажите альтернативный
Этот пакет будет построен в соответствии со следующими значениями:
0 - Сопровождающий: [root @ aboettger-VirtualBox]
1 - Резюме: [Пакет создан с помощью checkinstall 1.6.2]
2 - Имя: [libimobiledevice]
3 - Версия: []
4 - Выпуск: [1]
5 - Лицензия: [GPL]
6 - Группа: [checkinstall]
7 - Архитектура: [i386]
8 - Исходное местоположение: [libimobiledevice]
9 - Альтернативное местоположение источника: []
10 - Требуется: []
11 - Предоставляет: [libimobiledevice]
12 - Конфликты: []
13 - Заменяет: []
Просто нажмите 3 и введите 1.2.1
и Введите
Введите число, чтобы изменить любой из них, или нажмите ENTER для продолжения: 3
Введите новую версию:
>> 1.2.1
Проверить установленные файлы
dpkg -L libimobiledevice
и вы увидите что-то вроде этого
/.
/ usr
/ usr / share
/ usr / share / doc
/ usr / share / doc / libimobiledevice
/usr/share/doc/libimobiledevice/COPYING.LESSER
/ usr / share / doc / libimobiledevice / АВТОРЫ
/ usr / share / doc / libimobiledevice / НОВОСТИ
/ 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 / КОПИРОВАНИЕ
/ usr / местный
/ USR / местные / бен
/ USR / местные / bin / idevicepair
/ usr / local / bin / idevicename
/ USR / местные / bin / ideviceinfo
/ USR / местные / бен / idevicebackup2
/ USR / местные / bin / ideviceprovision
/ usr / местный / bin / idevicecrashreport
/ usr / местный / bin / ideviceimagemounter
/ usr / местный / bin / idevice_id
/ usr / локальный / bin / idevicenotificationproxy
/ usr / местные / bin / ideviceenterrecovery
/ USR / местные / bin / idevicescreenshot
/ usr / local / bin / idevicediagnostics
/ USR / местные / бен / idevicedebug
/ USR / местные / бен / idevicebackup
/ usr / локальный / bin / idevicedebugserverproxy
/ usr / локальный / bin / idevicesyslog
/ USR / местные / bin / idevicedate
/ USR / местные / библиотека
/usr/local/lib/libimobiledevice.la
/ usr / местные / библиотека / pkgconfig
/usr/local/lib/pkgconfig/libimobiledevice-1.0.pc
/usr/local/lib/libimobiledevice.so.6.0.0
/usr/local/lib/libimobiledevice.a
/ USR / местные / доля
/ USR / местные / доля / человек
/ USR / местные / доля / человек / человек1
/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 / местные / включают
/ USR / местные / включают / 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:
Установить сборку инструменты и зависимости
sudo apt-get install build-essential fakeroot devscripts pbuilder
sudo apt-get build-dep libimobiledevice
Загрузите исходный код и сценарии сборки Debian для текущей упакованной версии (1.1.5 в Ubuntu 14.04):
apt-get source libimobiledevice
cd libimobiledevice-1.1.5
Сканировать и загрузить новую версию основной ветки разработки:
uscan --verbose
Распакуйте его, установите сценарии сборки Debian и обновите журнал изменений:
uupdate ../libimobiledevice_1.2.0.orig.tar.bz2
cd ../libimobiledevice-1.2.0
Создайте двоичный пакет (параллельно с таким количеством рабочих процессов, сколько доступно ядер ЦП):
debuild -b -j $ (getconf _NPROCESSORS_ONLN)
( -j
дает указание системе сборки запускать отдельные задачи сборки параллельно, если это возможно. Поскольку это иногда приводит к проблемам, может быть целесообразно попробовать повторно запустить сборку без этого флага или чтобы сначала сбросить его.)
Установите собранный пакет:
sudo dpkg -i ../libimobiledevice_1.2.0*.deb
На самом деле я немного схитрил. Я не смог удовлетворить зависимости сборки, потому что библиотека недоступна в достаточно свежих версиях Ubuntu 14.04: libimobiledevice-1.2.0 требует libusbmuxd-dev (> = 1.0.9)
, так что вы ' Сначала мне нужно будет собрать его из исходников по тому же рецепту.
Я использую этот PPA, у него есть последнее либимобилизованное устройство, но не все компоненты представлены там: https://launchpad.net/~martin-salbaba/+archive/ubuntu/ppa+libimobiledevice
Хорошо, это то, что сработало для меня.
Порядок:
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
В запрос проверки установки
:
> y[ENTER]
> [ENTER]
> 3[ENTER]
> 1.2.1[ENTER]
> [ENTER]
16.04 будет иметь 1.2. Я смог загрузить debs с панели запуска ( https://launchpad.net/ubuntu/xenial/+source/libimobiledevice ) и установить их 15.10. Мне потребовались libusbmuxd4
, libimobiledevice6
и libimobiledevice-dev
. Затем я установил ifuse 1.1.3, следуя этим указаниям: https://askubuntu.com/a/691758