среда, 17 октября 2012 г.

pyside for ida pro 6.3

We evaluated both PySide and PyQt and found that both bindings work fine with IDA Pro 6.0
Well, it`s good news
Bad news is that fresh versions of shiboken and pyside from git cannot be built for ida 6.3 and qt-4.8.1 anymore
Assume that we have open-source edition of qt-4.8.1 built using recommended options
configure -release -platform win32-msvc2008 -no-qt3support -qtnamespace QT
I was able to build shiboken (see my patch below) but pyside just don`t work - see my report
Patch for building of shiboken:

*** ApiExtractor\parser\rpp\preprocessor.h    Wed Oct 17 00:06:24 2012
--- F:\src\shiboken\ApiExtractor\parser\rpp\preprocessor.h    Tue Oct 16 21:03:05 2012
***************
*** 29,35 ****
--- 29,37 ----
  #include <QtCore/qstring.h>
  #include
<QtCore/qstringlist.h>
 
+ QT_BEGIN_NAMESPACE
  class QByteArray;
+ QT_END_NAMESPACE
  class PreprocessorPrivate;
 
  class Preprocessor
*** ApiExtractor\parser\ast.h    Wed Oct 17 00:06:24 2012
--- F:\src\shiboken\ApiExtractor\parser\ast.h    Tue Oct 16 21:04:25 2012
***************
*** 28,35 ****
--- 28,38 ----
 
  #include "smallobject.h"
  #include "list.h"
+ #include <qglobal.h>
 
+ QT_BEGIN_NAMESPACE
  class QString;
+ QT_END_NAMESPACE
 
  #define DECLARE_AST_NODE(k) \
      enum { __node_kind = Kind_##k };
*** ApiExtractor\parser\compiler_utils.h    Wed Oct 17 00:06:24 2012
--- F:\src\shiboken\ApiExtractor\parser\compiler_utils.h    Tue Oct 16 21:05:17 2012
***************
*** 30,37 ****
--- 30,39 ----
 
  #include "codemodel.h"
 
+ QT_BEGIN_NAMESPACE
  class QString;
  class QStringList;
+ QT_END_NAMESPACE
  struct TypeSpecifierAST;
  struct DeclaratorAST;
  class TokenStream;
*** ApiExtractor\apiextractor.h    Wed Oct 17 00:06:24 2012
--- F:\src\shiboken\ApiExtractor\apiextractor.h    Tue Oct 16 21:02:29 2012
***************
*** 30,36 ****
--- 30,38 ----
  #include <QStringList>
 
  class AbstractMetaBuilder;
+ QT_BEGIN_NAMESPACE
  class QIODevice;
+ QT_END_NAMESPACE
 
  class ApiExtractor
  {
*** ApiExtractor\include.h    Wed Oct 17 00:06:24 2012
--- F:\src\shiboken\ApiExtractor\include.h    Tue Oct 16 21:00:51 2012
***************
*** 27,33 ****
--- 27,35 ----
  #include <QString>
  #include <QList>
 
+ QT_BEGIN_NAMESPACE
  class QTextStream;
+ QT_END_NAMESPACE
 
  class Include
  {
*** ApiExtractor\reporthandler.h    Wed Oct 17 00:06:24 2012
--- F:\src\shiboken\ApiExtractor\reporthandler.h    Tue Oct 16 21:00:06 2012
***************
*** 24,30 ****
--- 24,34 ----
  #ifndef REPORTHANDLER_H
  #define REPORTHANDLER_H
 
+ #include <qglobal.h>
+
+ QT_BEGIN_NAMESPACE
  class QString;
+ QT_END_NAMESPACE
 
  class ReportHandler
  {
*** ApiExtractor\typesystem.h    Wed Oct 17 00:06:24 2012
--- F:\src\shiboken\ApiExtractor\typesystem.h    Tue Oct 16 21:01:43 2012
***************
*** 38,44 ****
--- 38,46 ----
  class Indentor;
 
  class AbstractMetaType;
+ QT_BEGIN_NAMESPACE
  class QTextStream;
+ QT_END_NAMESPACE
 
  class EnumTypeEntry;
  class FlagsTypeEntry;

Комментариев нет:

Отправить комментарий