มี PPA สำหรับ libimobiledevice 1.2 รุ่นล่าสุดที่รองรับ iOS 8 หรือบางคนสามารถอธิบายวิธีการสร้างจากแหล่งที่มาโดยไม่ทำให้ทุกอย่างยุ่งเหยิง?
มี PPA สำหรับ libimobiledevice 1.2 รุ่นล่าสุดที่รองรับ iOS 8 หรือบางคนสามารถอธิบายวิธีการสร้างจากแหล่งที่มาโดยไม่ทำให้ทุกอย่างยุ่งเหยิง?
คำตอบ:
การใช้พื้นที่เก็บข้อมูล 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++-dev 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 สร้างแพคเกจเดเบียนเพื่อให้ซอฟต์แวร์ได้รับการจัดการโดยผู้จัดการแพคเกจ
sudo apt-get install checkinstall
กำหนดค่าและสร้าง
./autogen.sh
make
ติดตั้ง
ด้วยคำสั่งด้านล่างแพ็คเกจเดบิตที่มีชื่อ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
ตรวจสอบไฟล์ที่ติดตั้ง
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:
ติดตั้งเครื่องมือสร้างและอ้างอิง
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
สร้างไบนารีแพคเกจ (ขนานกับคนงานมากเท่าที่แกน CPU ที่มีอยู่):
debuild -b -j$(getconf _NPROCESSORS_ONLN)
( -j
สั่งให้ระบบบิลด์รันงานบิลด์เดี่ยว ๆ ถ้าเป็นไปได้เนื่องจากบางครั้งอาจนำไปสู่ปัญหามันอาจคุ้มค่าที่จะลองรันบิลด์อีกครั้งโดยไม่มีแฟล็กนั้นหรือวางในตอนแรก)
ติดตั้งแพ็คเกจที่สร้างขึ้น:
sudo dpkg -i ../libimobiledevice_1.2.0*.deb
จริง ๆ แล้วฉันก็โกงนิดหน่อย ฉันไม่สามารถสร้าง build dependencies ได้เนื่องจากห้องสมุดไม่สามารถใช้งานได้ใน Ubuntu รุ่นล่าสุดอย่างเพียงพอ 14.04: libimobiledevice-1.2.0 libusbmuxd-dev (>= 1.0.9)
ดังนั้นคุณต้องสร้างจากแหล่งแรกด้วยสูตรเดียวกัน
./configure --help
รายการตัวเลือกที่มี
ตกลงนี่คือสิ่งที่ได้ผลสำหรับฉัน
ลำดับคือ:
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 จาก launchpad ( https://launchpad.net/ubuntu/xenial/+source/libimobiledevice ) และติดตั้งใน 15.10 ผมจำเป็นต้องมีlibusbmuxd4
, และlibimobiledevice6
libimobiledevice-dev
จากนั้นฉันติดตั้ง ifuse 1.1.3 โดยทำตามคำแนะนำเหล่านี้: /ubuntu//a/691758