mahaloz / DAILA

A decompiler-agnostic plugin for interacting with AI in your decompiler. GPT-4, Claude, and local models supported!
532 stars 46 forks source link

ImportError: cannot import name 'QObject' from 'PyQt5.Qt #55

Open ShahriyarB opened 1 week ago

ShahriyarB commented 1 week ago

No matter which version of Python or IDA Pro I use I get this error when I launch IDA Pro with daila plugin Tested on IDA Pro 7.5, 7.7 and 9.0 Tested with Python 3.9, 3.10, 3.11 and 3.12

C:\Program Files (x86)\IDA Pro 7.5 SP2\plugins\daila_plugin.py: Traceback (most recent call last): File "C:/Program Files (x86)/IDA Pro 7.5 SP2/plugins/daila_plugin.py", line 66, in PLUGIN_ENTRY return create_plugin(*args, **kwargs) File "C:/Program Files (x86)/IDA Pro 7.5 SP2/plugins/daila_plugin.py", line 11, in create_plugin return _create_plugin(*args, **kwargs) File "C:\Users\shahr\AppData\Local\Programs\Python\Python39\lib\site-packages\dailalib\__init__.py", line 50, in create_plugin deci = DecompilerInterface.discover( File "C:\Users\shahr\AppData\Local\Programs\Python\Python39\lib\site-packages\libbs\api\decompiler_interface.py", line 934, in discover from libbs.decompilers.ida.interface import IDAInterface File "C:\Users\shahr\AppData\Local\Programs\Python\Python39\lib\site-packages\libbs\decompilers\ida\interface.py", line 17, in <module> from . import compat File "C:\Users\shahr\AppData\Local\Programs\Python\Python39\lib\site-packages\libbs\decompilers\ida\compat.py", line 28, in <module> from PyQt5.Qt import QObject ImportError: cannot import name 'QObject' from 'PyQt5.Qt' (C:\Program Files (x86)\IDA Pro 7.5 SP2\python\3\PyQt5\Qt.pyd)

mahaloz commented 1 week ago

@ShahriyarB it looks like your IDA install may be corrupted in some way. To verify it is, try and go into the IDA terminal and write from PyQt5.Qt import QObject. This should never fail since QT5 is bundled with IDA.

BeErikk commented 5 minutes ago

First: Thanks for the plugin!

I have the error in 8.3 as well. Testing from PyQt5.Qt import QObject works OK AFAICS.

Error: C:\dev\devapps\IDA\IDA.8.3\plugins\daila_plugin.py: Traceback (most recent call last): File "C:/dev/devapps/IDA/IDA.8.3/plugins/daila_plugin.py", line 73, in PLUGIN_ENTRY return create_plugin(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:/dev/devapps/IDA/IDA.8.3/plugins/daila_plugin.py", line 11, in create_plugin return _create_plugin(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\dev\devapps\scripts\Python3\Lib\site-packages\dailalib\__init__.py", line 51, in create_plugin deci = DecompilerInterface.discover( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\dev\devapps\scripts\Python3\Lib\site-packages\libbs\api\decompiler_interface.py", line 934, in discover from libbs.decompilers.ida.interface import IDAInterface File "C:\dev\devapps\scripts\Python3\Lib\site-packages\libbs\decompilers\ida\interface.py", line 17, in <module> from . import compat File "C:\dev\devapps\scripts\Python3\Lib\site-packages\libbs\decompilers\ida\compat.py", line 28, in <module> from PyQt5.Qt import QObject ImportError: cannot import name 'QObject' from 'PyQt5.Qt' (C:\dev\devapps\IDA\IDA.8.3\python\3\PyQt5\Qt.pyd)