idb icon indicating copy to clipboard operation
idb copied to clipboard

Installation Issues

Open ASR81 opened this issue 7 years ago • 13 comments

I have an error that occurs when installing idb.... The error happens when I run the command: gem install idb

CMake Error at /usr/local/Cellar/cmake/3.7.1/share/cmake/Modules/FindQt4.cmake:1318 (message): Found unsuitable Qt version "5.7.1" from /usr/local/bin/qmake, this code requires Qt 4.x

I'm not very familiar with cmake or qt, and searching for a solution has left me empty handed. Anyone know of how to fix the error I'm experiencing? Thanks in advance!

ASR81 avatar Jan 03 '17 02:01 ASR81

Check out #79 for workaround.

NitinJami avatar Jan 12 '17 20:01 NitinJami

Thanks that helped me find the solution following a couple of links from there.

brew install cartr/qt4/qt
brew linkapps qt

ASR81 avatar Jan 13 '17 07:01 ASR81

I had same issue. idb would not install with the qt5. Had to go back to qt4.

rustymagnet3000 avatar Apr 05 '17 11:04 rustymagnet3000

I attempted the workaround above and got the following

/Users/xx/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/x86_64-darwin12.0/ruby/config.h:17:9: warning: '_GNU_SOURCE' macro redefined [-Wmacro-redefined]
#define _GNU_SOURCE 1
        ^
/Users/xx/.rvm/rubies/ruby-2.1.1/lib/ruby/gems/2.1.0/gems/qtbindings-4.8.6.3/ext/ruby/qtruby/src/Qt.cpp:19:9: note: previous definition is here
#define _GNU_SOURCE
        ^
1 warning generated.
[ 80%] Building CXX object ruby/qtruby/src/CMakeFiles/qtruby4shared.dir/handlers.o
[ 80%] Building CXX object ruby/qtruby/src/CMakeFiles/qtruby4shared.dir/marshall_types.o
[ 81%] Linking CXX shared library libqtruby4shared.dylib
Undefined symbols for architecture x86_64:
  "_rb_float_new", referenced from:
      unsigned long primitive_to_ruby<float>(float) in handlers.o
      unsigned long primitive_to_ruby<double>(double) in handlers.o
      marshall_QListqreal(Marshall*) in handlers.o
      marshall_QVectorqreal(Marshall*) in handlers.o
      marshall_QPairqrealQColor(Marshall*) in handlers.o
      marshall_doubleR(Marshall*) in handlers.o
  "_rb_funcallv", referenced from:
      method_missing(int, unsigned long*, unsigned long) in Qt.o
      class_method_missing(int, unsigned long*, unsigned long) in Qt.o
      QtRuby::VirtualMethodCall::callMethod() in marshall_types.o
      funcall2_protect(unsigned long) in marshall_types.o
      QtRuby::InvokeSlot::invokeSlot() in marshall_types.o
  "_rb_gc_writebarrier_unprotect_promoted", referenced from:
      rb_obj_wb_unprotect(unsigned long, char const*, int) in marshall_types.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [ruby/qtruby/src/libqtruby4shared.2.0.0.dylib] Error 1
make[2]: *** [ruby/qtruby/src/CMakeFiles/qtruby4shared.dir/all] Error 2
make[1]: *** [all] Error 2
make: *** [build] Error 2

make failed, exit code 2

sigmundfridge avatar May 16 '17 12:05 sigmundfridge

@sigmundfridge I have this same issue on El Capitan

p0wer0n avatar Jun 22 '17 20:06 p0wer0n

I just update the installation instructions at http://www.idbtool.com/installation/. Can you try installing a newer version of ruby say 2.4.1: rvm install 2.4.1 --enable-shared and then upgrade to the latest gem gem update idb?

dmayer avatar Jul 22 '17 21:07 dmayer

@dmayer I followed the above steps and I am getting the following error.

Error
rtayal:Data rtayal$ gem install idb
Building native extensions.  This could take a while...
ERROR:  Error installing idb:
	ERROR: Failed to build gem native extension.

    current directory: /Users/rtayal/.rvm/gems/ruby-2.4.1/gems/qtbindings-4.8.6.3
/Users/rtayal/.rvm/rubies/ruby-2.4.1/bin/ruby -r ./siteconf20170914-60601-dwmrka.rb extconf.rb

current directory: /Users/rtayal/.rvm/gems/ruby-2.4.1/gems/qtbindings-4.8.6.3
make "DESTDIR=" clean
mkdir ext/build
mkdir bin/2.4
mkdir bin/plugins
mkdir bin/plugins/accessible
mkdir bin/plugins/bearer
mkdir bin/plugins/codecs
mkdir bin/plugins/designer
mkdir bin/plugins/graphicssystems
mkdir bin/plugins/iconengines
mkdir bin/plugins/imageformats
mkdir bin/plugins/phonon_backend
mkdir bin/plugins/qmltooling
mkdir bin/plugins/sqldrivers
mkdir lib/2.4
cd ext/build; rm -rf CMakeFiles
cd ext/build; rm -rf generator
cd ext/build; rm -rf smoke
cd ext/build; rm -rf ruby
cd ext/build; rm *
rm: *: No such file or directory
make: [clean] Error 1 (ignored)

current directory: /Users/rtayal/.rvm/gems/ruby-2.4.1/gems/qtbindings-4.8.6.3
make "DESTDIR="
mkdir ext/build
mkdir: ext/build: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/2.4
mkdir: bin/2.4: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins
mkdir: bin/plugins: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/accessible
mkdir: bin/plugins/accessible: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/bearer
mkdir: bin/plugins/bearer: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/codecs
mkdir: bin/plugins/codecs: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/designer
mkdir: bin/plugins/designer: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/graphicssystems
mkdir: bin/plugins/graphicssystems: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/iconengines
mkdir: bin/plugins/iconengines: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/imageformats
mkdir: bin/plugins/imageformats: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/phonon_backend
mkdir: bin/plugins/phonon_backend: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/qmltooling
mkdir: bin/plugins/qmltooling: File exists
make: [makedirs] Error 1 (ignored)
mkdir bin/plugins/sqldrivers
mkdir: bin/plugins/sqldrivers: File exists
make: [makedirs] Error 1 (ignored)
mkdir lib/2.4
mkdir: lib/2.4: File exists
make: [makedirs] Error 1 (ignored)
cd ext/build; rm -rf CMakeFiles
cd ext/build; rm -rf generator
cd ext/build; rm -rf smoke
cd ext/build; rm -rf ruby
cd ext/build; rm *
rm: *: No such file or directory
make: [clean] Error 1 (ignored)
cd ext/build; \
cmake -DCMAKE_MINIMUM_REQUIRED_VERSION=2.6 \
-G "Unix Makefiles" \
-Wno-dev \
-DRUBY_EXECUTABLE=/Users/rtayal/.rvm/rubies/ruby-2.4.1/bin/ruby \
..
/bin/sh: cmake: command not found
make: [build] Error 127 (ignored)
cd ext/build; make
make[1]: *** No targets specified and no makefile found.  Stop.
make: *** [build] Error 2

make failed, exit code 2

Gem files will remain installed in /Users/rtayal/.rvm/gems/ruby-2.4.1/gems/qtbindings-4.8.6.3 for inspection.
Results logged to /Users/rtayal/.rvm/gems/ruby-2.4.1/extensions/x86_64-darwin-16/2.4.0/qtbindings-4.8.6.3/gem_make.out
rtayal:Data rtayal$ 

RishabhTayal avatar Sep 14 '17 17:09 RishabhTayal

It looks like you are missing cmake. If you are using homebrew you should be able to install it via brew install cmake.

dmayer avatar Sep 14 '17 18:09 dmayer

I followed the instructions again from http://www.idbtool.com/installation/ and now its installed. 👍
Apparently I didn't run the following commands

brew tap cartr/qt4
brew tap-pin cartr/qt4
brew install cartr/qt4/qt@4
brew install cmake usbmuxd libimobiledevice

RishabhTayal avatar Sep 14 '17 18:09 RishabhTayal

I've followed the installation guide, but then I got the following error:

[ 82%] Building CXX object ruby/qtruby/src/CMakeFiles/qtruby4.dir/qtruby.o
/Users/rzepsky/.rvm/gems/ruby-2.4.1/gems/qtbindings-4.8.6.3/ext/ruby/qtruby/src/qtruby.cpp:2211:14: error: ordered comparison between pointer and zero ('void *' and 'int')
        return (ptr > 0 ? Qtrue : Qfalse);
                ~~~ ^ ~
1 error generated.
make[3]: *** [ruby/qtruby/src/CMakeFiles/qtruby4.dir/qtruby.o] Error 1
make[2]: *** [ruby/qtruby/src/CMakeFiles/qtruby4.dir/all] Error 2
make[1]: *** [all] Error 2
make: *** [build] Error 2

make failed, exit code 2

Gem files will remain installed in /Users/rzepsky/.rvm/gems/ruby-2.4.1/gems/qtbindings-4.8.6.3 for inspection.

Do you have any hint how to overcome it?

xep624 avatar Oct 05 '17 07:10 xep624

Hi guys I solved that problem so:

  1. clone https://github.com/ryanmelt/qtbindings
  2. build gem file from sources
  3. install qtbindings.gem
  4. install idb

ximerus avatar Oct 13 '17 09:10 ximerus

Confirm, works like a charm. Thank you very much @ximerus!

xep624 avatar Oct 13 '17 17:10 xep624

Can you tell the exact steps @ximerus

Dhruv276R avatar Apr 18 '21 08:04 Dhruv276R