Page 1 of 4 123 ... LastLast
Results 1 to 10 of 34

Thread: iDeviceRestore

  1. #1
    Join Date
    Jan 2007
    Beans
    87
    Distro
    Ubuntu 10.04 Lucid Lynx

    iDeviceRestore

    So, here's what i'm trying to do.
    http://github.com/posixninja/idevicerestore

    I got all the required libraries, as mentioned anyway, but when I try :

    Code:
    cmake ~/usbmuxd
    I get :

    Code:
    -- Configuring usbmuxd v1.0.5-6-ge534cc5
    -- Found PLIST 
    -- Will build usbmuxd: YES
    -- libusbmuxd will be built with protocol version 1 support
    -- checking for module 'libusb-1.0>=1.0.3'
    --   package 'libusb-1.0>=1.0.3' not found
    USB_INCLUDE_DIR=USB_INCLUDE_DIR-NOTFOUND
    USB_LIBRARY=USB_LIBRARY-NOTFOUND
    CMake Error at Modules/LibFindMacros.cmake:74 (message):
      Required library USB NOT FOUND.
    
      Install the library (dev version) and try again.  If the library is already
      installed, use ccmake to set the missing variables manually.
    Call Stack (most recent call first):
      Modules/FindUSB.cmake:40 (libfind_process)
      daemon/CMakeLists.txt:1 (find_package)
    
    
    -- Configuring incomplete, errors occurred!
    I do have all the libraries, and build-essential is complete as well :

    Code:
    apoorv@AC-ubuntu:~/usbmuxd$ sudo apt-get install build-essential libusb-dev
    
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    build-essential is already the newest version.
    libusb-dev is already the newest version.
    0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
    Help!

  2. #2
    Join Date
    Apr 2007
    Beans
    85

    Re: iDeviceRestore

    Look for the libusb dev file. I had the same problem, but installing the libusb-1.0-0-dev package solved the issue.

  3. #3
    Join Date
    Jan 2007
    Beans
    87
    Distro
    Ubuntu 10.04 Lucid Lynx

    Re: iDeviceRestore

    Awesome! That worked. Here's the next one now. (Sorry, i'm still a noob!)

    Code:
    make linux && sudo make install
    gcc -o libirecovery.o -c src/libirecovery.c -g -I./include -lreadline -fPIC 
    src/libirecovery.c: In function ‘irecv_send_buffer’:
    src/libirecovery.c:436: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘long unsigned int’
    src/libirecovery.c:436: warning: format ‘%d’ expects type ‘int’, but argument 5 has type ‘long unsigned int’
    gcc -o libirecovery.so libirecovery.o -g -shared -Wl,-soname,libirecovery.so -lusb-1.0
    gcc -o irecovery src/irecovery.c -g -I./include -L. -lirecovery -lreadline
    src/irecovery.c:23:31: error: readline/readline.h: No such file or directory
    src/irecovery.c:24:30: error: readline/history.h: No such file or directory
    src/irecovery.c: In function ‘parse_command’:
    src/irecovery.c:52: warning: incompatible implicit declaration of built-in function ‘strdup’
    src/irecovery.c:53: warning: initialization makes pointer from integer without a cast
    src/irecovery.c:64: warning: initialization makes pointer from integer without a cast
    src/irecovery.c:73: warning: initialization makes pointer from integer without a cast
    src/irecovery.c:83: warning: initialization makes pointer from integer without a cast
    src/irecovery.c: In function ‘init_shell’:
    src/irecovery.c:117: warning: initialization makes pointer from integer without a cast
    src/irecovery.c: In function ‘precommand_cb’:
    src/irecovery.c:155: warning: incompatible implicit declaration of built-in function ‘strdup’
    src/irecovery.c:156: warning: assignment makes pointer from integer without a cast
    src/irecovery.c:159: warning: assignment makes pointer from integer without a cast
    src/irecovery.c: In function ‘postcommand_cb’:
    src/irecovery.c:181: warning: incompatible implicit declaration of built-in function ‘strdup’
    src/irecovery.c:182: warning: assignment makes pointer from integer without a cast
    make: *** [linux] Error 1
    Doesn't look like a dependency thing but more of a coding issue. Am I right?

  4. #4
    Join Date
    Apr 2007
    Beans
    85

    Re: iDeviceRestore

    Same thing - go to Synaptic and add all the readline development packages.

    The one thing I'm learning lately (the first time I tried to compile this thing I spent HOURS trying to sort it out) is that the dev packages is pretty much Where It's At.

  5. #5
    Join Date
    Jan 2007
    Beans
    87
    Distro
    Ubuntu 10.04 Lucid Lynx

    Re: iDeviceRestore

    Ok, I was missing one of them. So I got that, and this is the new error message.

    Code:
    gcc -o libirecovery.o -c src/libirecovery.c -g -I./include -lreadline -fPIC 
    src/libirecovery.c: In function ‘irecv_send_buffer’:
    src/libirecovery.c:436: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘long unsigned int’
    src/libirecovery.c:436: warning: format ‘%d’ expects type ‘int’, but argument 5 has type ‘long unsigned int’
    gcc -o libirecovery.so libirecovery.o -g -shared -Wl,-soname,libirecovery.so -lusb-1.0
    gcc -o irecovery src/irecovery.c -g -I./include -L. -lirecovery -lreadline
    #cp libirecovery.so /usr/local/lib/libirecovery.so
    cp libirecovery.dylib /usr/local/lib/libirecovery.dylib
    cp: cannot stat `libirecovery.dylib': No such file or directory
    make: *** [install] Error 1

  6. #6
    Join Date
    Apr 2007
    Beans
    85

    Re: iDeviceRestore

    That one is easy. Open up the Makefile and comment out (#) the .dylib in the "Install" section.

    When you get it working, let me know how it goes. I can't seem to update my phone, I am told that it can't transfer the "iBEC" to my device.

  7. #7
    Join Date
    Jan 2007
    Beans
    87
    Distro
    Ubuntu 10.04 Lucid Lynx

    Re: iDeviceRestore

    Do you have "libusbmuxd" installed? Apparently I dont and its not in the repo either.

    edit: Nevermind. Figured it out. Brainfart.
    Last edited by icehammer; October 28th, 2010 at 05:57 AM.

  8. #8
    Join Date
    Jan 2007
    Beans
    87
    Distro
    Ubuntu 10.04 Lucid Lynx

    Re: iDeviceRestore

    Code:
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking target system type... x86_64-unknown-linux-gnu
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether build environment is sane... yes
    checking for a thread-safe mkdir -p... /bin/mkdir -p
    checking for gawk... gawk
    checking whether make sets $(MAKE)... yes
    checking for style of include used by make... GNU
    checking for gcc... gcc
    checking whether the C compiler works... yes
    checking for C compiler default output file name... a.out
    checking for suffix of executables... 
    checking whether we are cross compiling... no
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether gcc accepts -g... yes
    checking for gcc option to accept ISO C89... none needed
    checking dependency style of gcc... gcc3
    checking whether gcc and cc understand -c and -o together... yes
    checking for pkg-config... /usr/bin/pkg-config
    checking pkg-config is at least version 0.9.0... yes
    checking for libimobiledevice... yes
    checking for libplist... yes
    checking for libzip... yes
    checking for libcurl... yes
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating src/Makefile
    config.status: executing depfiles commands
    apoorv@AC-ubuntu:~/idevicerestore$ make && sudo make install
    Making all in src
    make[1]: Entering directory `/home/apoorv/idevicerestore/src'
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-idevicerestore.o -MD -MP -MF .deps/idevicerestore-idevicerestore.Tpo -c -o idevicerestore-idevicerestore.o `test -f 'idevicerestore.c' || echo './'`idevicerestore.c
    idevicerestore.c: In function ‘main’:
    idevicerestore.c:199: warning: format ‘%llu’ expects type ‘long long unsigned int’, but argument 2 has type ‘uint64_t’
    mv -f .deps/idevicerestore-idevicerestore.Tpo .deps/idevicerestore-idevicerestore.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-common.o -MD -MP -MF .deps/idevicerestore-common.Tpo -c -o idevicerestore-common.o `test -f 'common.c' || echo './'`common.c
    common.c: In function ‘write_file’:
    common.c:43: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘size_t’
    common.c:43: warning: format ‘%d’ expects type ‘int’, but argument 5 has type ‘size_t’
    common.c: In function ‘read_file’:
    common.c:70: warning: incompatible implicit declaration of built-in function ‘malloc’
    common.c:81: warning: incompatible implicit declaration of built-in function ‘free’
    common.c: In function ‘debug_plist’:
    common.c:95: warning: incompatible implicit declaration of built-in function ‘free’
    mv -f .deps/idevicerestore-common.Tpo .deps/idevicerestore-common.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-tss.o -MD -MP -MF .deps/idevicerestore-tss.Tpo -c -o idevicerestore-tss.o `test -f 'tss.c' || echo './'`tss.c
    tss.c: In function ‘tss_create_request’:
    tss.c:85: warning: format ‘%qu’ expects type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’
    tss.c:85: warning: format ‘%qu’ expects type ‘long long unsigned int’, but argument 4 has type ‘uint64_t’
    tss.c: In function ‘tss_send_request’:
    tss.c:168: warning: call to ‘_curl_easy_setopt_err_write_callback’ declared with attribute warning: curl_easy_setopt expects a curl_write_callback argument for this option
    mv -f .deps/idevicerestore-tss.Tpo .deps/idevicerestore-tss.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-img3.o -MD -MP -MF .deps/idevicerestore-img3.Tpo -c -o idevicerestore-img3.o `test -f 'img3.c' || echo './'`img3.c
    mv -f .deps/idevicerestore-img3.Tpo .deps/idevicerestore-img3.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-ipsw.o -MD -MP -MF .deps/idevicerestore-ipsw.Tpo -c -o idevicerestore-ipsw.o `test -f 'ipsw.c' || echo './'`ipsw.c
    mv -f .deps/idevicerestore-ipsw.Tpo .deps/idevicerestore-ipsw.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-normal.o -MD -MP -MF .deps/idevicerestore-normal.Tpo -c -o idevicerestore-normal.o `test -f 'normal.c' || echo './'`normal.c
    mv -f .deps/idevicerestore-normal.Tpo .deps/idevicerestore-normal.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-dfu.o -MD -MP -MF .deps/idevicerestore-dfu.Tpo -c -o idevicerestore-dfu.o `test -f 'dfu.c' || echo './'`dfu.c
    mv -f .deps/idevicerestore-dfu.Tpo .deps/idevicerestore-dfu.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-recovery.o -MD -MP -MF .deps/idevicerestore-recovery.Tpo -c -o idevicerestore-recovery.o `test -f 'recovery.c' || echo './'`recovery.c
    recovery.c: In function ‘recovery_get_ecid’:
    recovery.c:377: warning: passing argument 2 of ‘irecv_get_ecid’ from incompatible pointer type
    /usr/local/include/libirecovery.h:112: note: expected ‘long long unsigned int *’ but argument is of type ‘uint64_t *’
    mv -f .deps/idevicerestore-recovery.Tpo .deps/idevicerestore-recovery.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-restore.o -MD -MP -MF .deps/idevicerestore-restore.Tpo -c -o idevicerestore-restore.o `test -f 'restore.c' || echo './'`restore.c
    mv -f .deps/idevicerestore-restore.Tpo .deps/idevicerestore-restore.Po
    gcc -DPACKAGE_NAME=\"idevicerestore\" -DPACKAGE_TARNAME=\"idevicerestore\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"idevicerestore\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"idevicerestore\" -DVERSION=\"1.0\" -I.     -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -MT idevicerestore-asr.o -MD -MP -MF .deps/idevicerestore-asr.Tpo -c -o idevicerestore-asr.o `test -f 'asr.c' || echo './'`asr.c
    mv -f .deps/idevicerestore-asr.Tpo .deps/idevicerestore-asr.Po
    gcc  -pthread -I/usr/local/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include     -I/usr/local/include -g -O2 -pthread -L/usr/local/lib -limobiledevice -lplist -lusbmuxd -lgthread-2.0 -lrt -lgnutls -ltasn1 -lglib-2.0   -lplist   -lzip -lz   -lcurl   -L/usr/local/lib -lirecovery -lusb-1.0  -o idevicerestore idevicerestore-idevicerestore.o idevicerestore-common.o idevicerestore-tss.o idevicerestore-img3.o idevicerestore-ipsw.o idevicerestore-normal.o idevicerestore-dfu.o idevicerestore-recovery.o idevicerestore-restore.o idevicerestore-asr.o  
    /usr/bin/ld: cannot find -lirecovery
    collect2: ld returned 1 exit status
    make[1]: *** [idevicerestore] Error 1
    make[1]: Leaving directory `/home/apoorv/idevicerestore/src'
    make: *** [all-recursive] Error 1
    I have no idea what this all means LOL.
    I feel like an idiot. I should dual boot and get iTunes.

  9. #9
    Join Date
    Jun 2009
    Location
    Mexico City, Mexico
    Beans
    34

    Re: iDeviceRestore

    Ok, I just sorted out that error.

    The thing is that idevicerestore needs some binary called irecovery, which is installed among libirecovery (pretty obvious huh?).

    You need to make sure that libirecovery is installed correctly, without any errors, and type "sudo ldconfig" after it, then idevicerestore won't complain about it, and when you finish with "make install" in idevicerestore type "sudo ldconfig" again to make sure everything is laoded correctly
    Quote Originally Posted by From another forum
    If you weren't talking like Polly Pocket I'd help you out.

  10. #10
    Join Date
    Dec 2008
    Beans
    19

    Re: iDeviceRestore

    Thanks everybody. I was able to compile the entire set of idevice tools know after reading this thread.

    I just followed the url in the first post and with all the additional suggestions here. I had to install libplist++1 swig with apt-get also.

    I will try this in a few days when my wifes ipad enter the house, Have anyone upgraded to ios 4.2.1 with idevicerestore?

Page 1 of 4 123 ... LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •