libimobiledevice 1.2 (รองรับ iOS 8) สำหรับ Ubuntu 14.04 Trusty


22

มี PPA สำหรับ libimobiledevice 1.2 รุ่นล่าสุดที่รองรับ iOS 8 หรือบางคนสามารถอธิบายวิธีการสร้างจากแหล่งที่มาโดยไม่ทำให้ทุกอย่างยุ่งเหยิง?

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


ฉันไม่พบใด ๆ แต่ก็ไม่ยากที่จะสร้างและแพคเกจรุ่นปัจจุบันตัวเอง: help.ubuntu.com/community/UpdatingADeb
David Foerster

ขอบคุณฉันเดาว่าฉันจะต้องลองดู ฉันเห็นด้วยเล็กน้อยเกี่ยวกับการยกเลิกการรวมกับหอยโข่ง
tristank

คุณประสบความสำเร็จกับมันหรือไม่? คุณสามารถเมานต์โฟลเดอร์ "Documents of ... " อีกครั้งหรือไม่ ฉันจัดการเพื่อสร้างและติดตั้ง แต่การติดตั้งและการชาร์จไม่ทำงานเลย ดังนั้นฉันจึงปรับลดรุ่นและรอคนที่มีทักษะมากกว่าในการตั้งค่า ppa
Weidenrinde

คำตอบ:


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 สร้างแพคเกจเดเบียนเพื่อให้ซอฟต์แวร์ได้รับการจัดการโดยผู้จัดการแพคเกจ

    sudo apt-get install checkinstall
    
  6. กำหนดค่าและสร้าง

    ./autogen.sh
    make
    
  7. ติดตั้ง

    ด้วยคำสั่งด้านล่างแพ็คเกจเดบิตที่มีชื่อ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
    

คุณสามารถเมานต์โฟลเดอร์ "Documents of ... " อีกครั้งหรือไม่ ทำงานกับ iOS 9/10 ได้หรือไม่?
Weidenrinde

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. สร้างไบนารีแพคเกจ (ขนานกับคนงานมากเท่าที่แกน CPU ที่มีอยู่):

    debuild -b -j$(getconf _NPROCESSORS_ONLN)

    ( -jสั่งให้ระบบบิลด์รันงานบิลด์เดี่ยว ๆ ถ้าเป็นไปได้เนื่องจากบางครั้งอาจนำไปสู่ปัญหามันอาจคุ้มค่าที่จะลองรันบิลด์อีกครั้งโดยไม่มีแฟล็กนั้นหรือวางในตอนแรก)

  6. ติดตั้งแพ็คเกจที่สร้างขึ้น:

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

จริง ๆ แล้วฉันก็โกงนิดหน่อย ฉันไม่สามารถสร้าง build dependencies ได้เนื่องจากห้องสมุดไม่สามารถใช้งานได้ใน Ubuntu รุ่นล่าสุดอย่างเพียงพอ 14.04: libimobiledevice-1.2.0 libusbmuxd-dev (>= 1.0.9)ดังนั้นคุณต้องสร้างจากแหล่งแรกด้วยสูตรเดียวกัน


1
ในขณะที่พยายามสร้าง libusbmux-d ที่ได้รับการอัพเกรดหลังจากเพิ่มการอ้างอิงบางอย่างฉันพบว่า: dh_auto_configure - -DCMAKE_INSTALL_PREFIX = "/ usr" -DCMAKE_SKIP_RPATH = true -DLIB_SUFFIX = -DLIB_SUFFIX : ข้อผิดพลาด: ตัวเลือกที่ไม่รู้จัก: `-DCMAKE_INSTALL_PREFIX = / usr 'ความคิดใด ๆ มีโอกาสที่คุณ (หรือคนอื่น ๆ ) จะโพสต์ผลลัพธ์ของความพยายามของคุณใน ppa หรือไม่?
Weidenrinde

โปรดเปิดคำถามใหม่สำหรับปัญหาของคุณ คุณสามารถส่งลิงก์ผ่านส่วนความคิดเห็นนี้ให้ฉันเพื่อดึงดูดความสนใจของฉันได้ ตามแนวคิดอย่างรวดเร็วให้ดูผลลัพธ์ของ./configure --helpรายการตัวเลือกที่มี
David Foerster

1
ที่จริงแล้วมีคนอื่นทำเช่นนี้เพราะพวกเขาพบปัญหาเดียวกัน ... askubuntu.com/questions/616501/…
Weidenrinde

1
ฉันมีปัญหาเดียวกันบน Ubuntu 15.04 คุณได้รับการแก้ปัญหาหรือไม่?
รหัสแหล่งที่มา

1
ในการติดตั้งlibusbmuxd-dev (>= 1.0.9)คุณสามารถดาวน์โหลด * .deb ที่นี่และติดตั้งด้วยsudo dpkg -i
Michele

8

ตกลงนี่คือสิ่งที่ได้ผลสำหรับฉัน

ลำดับคือ:

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]

3

ฉันใช้ PPA นี้ แต่ก็มี libimobiledevice ล่าสุด แต่ไม่มีการแสดงส่วนประกอบทั้งหมดที่นั่น: https://launchpad.net/~martin-salbaba/+archive/ubuntu/ppa+libimobiledevice


องค์ประกอบใดหายไป? ผู้ที่เปิดใช้งานการดูเอกสารที่แชร์ของแอพ?
NoBugs

@ ไม่มีข้อผิดพลาดใช่ถ้าคิดถึง
yanpas

ไม่ทำงานบน 15.10
Aleksandr Dubinsky

1

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.