libimobiledevice 1.2 (Hỗ trợ iOS 8) cho Ubuntu 14.04 Trusty


22

Có một PPA có sẵn cho phiên bản libimobiledevice 1.2 gần đây nhất có hỗ trợ cho iOS 8 hay ai đó có thể giải thích cách xây dựng nó từ nguồn mà không làm hỏng mọi thứ?

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


Tôi không tìm thấy bất kỳ thứ gì, nhưng không khó để tự mình xây dựng và đóng gói phiên bản hiện tại: help.ubfox.com/community/UpdatingADeb .
David foerster

Cảm ơn tôi đoán tôi sẽ phải thử nó sau đó. Tôi có một chút đồng tình về việc phá vỡ sự tích hợp với nautilus.
tristank

Bạn đã thành công với nó? Bạn có thể gắn lại thư mục "Tài liệu của ..." không? Tôi đã quản lý để xây dựng và cài đặt, nhưng việc gắn và sạc hoàn toàn không hoạt động. Do đó, tôi đã hạ cấp và chờ đợi một người có kỹ năng hơn để thiết lập một ppa.
Weidenrinde

Câu trả lời:


23

Sử dụng kho GitHub .

Hãy nhớ rằng, mỗi bước chỉ hoạt động nếu bước trước đó thành công.

  1. Nhân bản kho lưu trữ

    mkdir -p ~/src
    cd ~/src
    git clone https://github.com/libimobiledevice/libimobiledevice.git
    cd libimobiledevice
    
  2. Cài đặt các thư viện phát triển cần thiết

    Bạn có thể cần thêm thư viện hoặc gói tiêu đề như được liệt kê dưới đây. Bạn sẽ thấy điều này nếu bạn có thông báo lỗi trong bước cấu hình sau này. Thêm một bình luận nếu bạn có vấn đề.

    sudo apt-get install libusbmuxd-dev libplist-dev  libplist++-dev libgnutls-dev libssl-dev python-dev
    
  3. Cài đặt một số phần mềm bổ sung

    Phần mềm sau đây là cần thiết để chuẩn bị phần mềm để biên dịch và sau đó biên dịch nó.

    sudo apt-get install usbmuxd make automake autoconf libtool pkg-config gcc
    
  4. Cài đặt phần mềm tùy chọn

    Phần mềm sau đây được sử dụng để làm cho các phần của gói hoàn thành chạy nhanh hơn và tạo tài liệu.

    sudo apt-get install cython doxygen
    
  5. Cài đặt một trình trợ giúp cài đặt

    Checkinstall tạo gói debian để phần mềm được quản lý bởi người quản lý gói.

    sudo apt-get install checkinstall
    
  6. Cấu hình và xây dựng

    ./autogen.sh
    make
    
  7. cài đặt, dựng lên

    Với lệnh bên dưới, gói deb có tên libimobiledevicesẽ được tạo và cài đặt.

    sudo checkinstall
    

    Bạn sẽ thấy cảnh báo này:

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

    Đơn giản chỉ cần nhấn 3và gõ 1.2.1Enter

    Enter a number to change any of them or press ENTER to continue: 3
    Enter new version: 
    >> 1.2.1
    
  8. Kiểm tra các tập tin được cài đặt

    dpkg -L libimobiledevice
    

    và bạn sẽ thấy một cái gì đó như thế này

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

Bạn có thể gắn lại thư mục "Tài liệu của ..." không? Có hoạt động với ios 9/10 không?
Weidenrinde

8

Đây là những gì tôi đã làm để xây dựng libimobiledevice-1.2.0:

  1. Cài đặt công cụ xây dựng và phụ thuộc

    sudo apt-get install build-essential fakeroot devscripts pbuilder
    sudo apt-get build-dep libimobiledevice
  2. Tải xuống các tập lệnh xây dựng nguồn và Debian của phiên bản hiện được đóng gói (1.1.5 trên Ubuntu 14.04):

    apt-get source libimobiledevice
    cd libimobiledevice-1.1.5
  3. Quét và tải xuống phiên bản ngược dòng mới:

    uscan --verbose
  4. Giải nén nó, đặt các tập lệnh xây dựng Debian vào vị trí và cập nhật nhật ký thay đổi:

    uupdate ../libimobiledevice_1.2.0.orig.tar.bz2
    cd ../libimobiledevice-1.2.0
  5. Xây dựng gói nhị phân (song song với càng nhiều công nhân càng có lõi CPU):

    debuild -b -j$(getconf _NPROCESSORS_ONLN)

    ( -jhướng dẫn hệ thống xây dựng chạy song song các tác vụ xây dựng riêng lẻ. Nếu điều này đôi khi dẫn đến sự cố, có thể đáng để thử chạy lại bản dựng mà không có cờ đó hoặc bỏ nó ở vị trí đầu tiên.)

  6. Cài đặt gói được xây dựng:

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

Thật ra tôi đã lừa dối một chút. Tôi không thể đáp ứng các phụ thuộc của bản dựng, bởi vì một thư viện không có sẵn trong các phiên bản gần đây trong Ubuntu 14.04: libimobiledevice-1.2.0 yêu cầu libusbmuxd-dev (>= 1.0.9), vì vậy trước tiên bạn sẽ phải xây dựng nó từ nguồn với cùng một công thức.


1
Trong khi cố gắng xây dựng libusbmux-d đã được nâng cấp, sau khi thêm một số phụ thuộc, tôi đã chạy vào: dh_auto_ thông minh - -DCMAKE_INSTALL_PREFIX = "/ usr" -DCMAKE_SKIP_RPATH = true -DLIB_SUFFIX = -DUSB : lỗi: tùy chọn không được nhận dạng: `-DCMAKE_INSTALL_PREFIX = / usr 'Có ý kiến ​​gì không? Có một số cơ hội mà bạn (hoặc những người khác) sẽ đăng kết quả của những nỗ lực của bạn trong một ppa?
Weidenrinde

Vui lòng mở một câu hỏi mới cho vấn đề của bạn. Bạn có thể gửi cho tôi một liên kết thông qua các phần bình luận này để thu hút sự chú ý của tôi đến nó. Là một ý tưởng nhanh, tham khảo đầu ra của ./configure --helpmột danh sách các tùy chọn có sẵn.
David Foerster

1
Trên thực tế, một người khác đã làm điều này, bởi vì họ chạy vào cùng một vấn đề ... askubuntu.com/questions/616501/...
Weidenrinde

1
Tôi có cùng một vấn đề trên Ubuntu 15.04. Bạn đã có được một giải pháp?
Mã nguồn

1
Để cài đặt, libusbmuxd-dev (>= 1.0.9)bạn có thể tải xuống * .deb tại đây và cài đặt vớisudo dpkg -i
Michele

8

OK, đây là những gì làm việc cho tôi.

Thứ tự là:

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

Nguồn: 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 

Trong checkinstalldấu nhắc:

> y[ENTER]
> [ENTER]
> 3[ENTER]
> 1.2.1[ENTER]
> [ENTER]

3

Tôi sử dụng PPA này, nó có libimobiledevice mới nhất, nhưng không phải tất cả các thành phần đều được đại diện ở đó: https://launchpad.net/~martin-salbaba/+archive/ubfox/ppa+libimobiledevice


Những thành phần nào còn thiếu? Những người cho phép xem các tài liệu được chia sẻ của ứng dụng?
NoBugs

@ Không, vâng, vâng, xin lỗi
yanpas

Không hoạt động vào ngày 15.10.
Alexanderr Dubinsky

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.