hoyori / idapython

Automatically exported from code.google.com/p/idapython
Other
1 stars 1 forks source link

Support for IDA Pro 5.3 #20

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. changed 5.1 patch to apply to 5.3 (see attached patch)
2. applied 5.3 patch to 5.3 sdk
3. cd idapython; python build.py

What is the expected output? What do you see instead?
Expected output is a successful build of idapython, but what I get is this
error message:

swig -modern -python -c++ -w451 -shadow -D__GNUC__ -Iswig -o idaapi.cpp
-I../swigsdk-versions/5.1/include idaapi.i
../swigsdk-versions/5.1/include/pro.h:1613: Warning(314): print is a python
keyword, symbol will be renamed as '_print'
../swigsdk-versions/5.1/include/expr.hpp:102: Warning(362): operator= ignored
../swigsdk-versions/5.1/include/typeinf.hpp:801: Error: Syntax error in
input(1).

This is the whole output of python build.py.

Do you have any idea what it means?

What version of the product are you using? On what operating system?
I am using IDA Python 0.9.61 with IDA Pro Standard 5.3. The operating
system is Fedora Core 6 running on an Xeon processor in 32-bit mode. 

Please provide any additional information below.

Original issue reported on code.google.com by andreas....@gmail.com on 23 Sep 2008 at 11:17

Attachments:

GoogleCodeExporter commented 9 years ago
I overcame the first problem. See attached patch for a patch to the specific 
problem.
I now get a whole new set of problems, where the main problem seems to be that
process_id_t has not been declared, as shown in the output of 'python build.py':

swig -modern -python -c++ -w451 -shadow -D__GNUC__ -Iswig -o idaapi.cpp
-I../swigsdk-versions/5.1/include idaapi.i
../swigsdk-versions/5.1/include/pro.h:1613: Warning(314): print is a python 
keyword,
symbol will be renamed as '_print'
../swigsdk-versions/5.1/include/expr.hpp:102: Warning(362): operator= ignored
../swigsdk-versions/5.1/include/moves.hpp:58: Warning(401): Nothing known about 
base
class 'sistack_t'. Ignored.
../swigsdk-versions/5.1/include/typeinf.hpp:1643: Warning(401): Nothing known 
about
base class 'qvector<type_pair_t >'. Ignored.
../swigsdk-versions/5.1/include/typeinf.hpp:1643: Warning(401): Maybe you 
forgot to
instantiate 'qvector<type_pair_t >' using %template.
../swigsdk-versions/5.1/include/typeinf.hpp:1839: Warning(401): Nothing known 
about
base class 'qvector<funcarg_info_t >'. Ignored.
../swigsdk-versions/5.1/include/typeinf.hpp:1839: Warning(401): Maybe you 
forgot to
instantiate 'qvector<funcarg_info_t >' using %template.
../swigsdk-versions/5.1/include/expr.hpp:195: Warning(454): Setting a
pointer/reference variable may leak memory.
../swigsdk-versions/5.1/include/loader.hpp:954: Warning(462): Unable to set 
variable
of type char []
../swigsdk-versions/5.1/include/typeinf.hpp:1797: Warning(454): Setting a
pointer/reference variable may leak memory.
g++ -fpermissive -o idaapi.o -c idaapi.cpp -I. -Iswig -I/usr/include/python2.5
-I../swigsdk-versions/5.1/include  -DVER_MAJOR="0" -DVER_MINOR="9" 
-DVER_PATCH="61"
-D__IDP__ -DMAXSTR="1024" -DUSE_DANGEROUS_FUNCTIONS 
-DUSE_STANDARD_FILE_FUNCTIONS
-D__LINUX__ 
idaapi.cpp:4201: error: ‘process_id_t’ has not been declared
idaapi.cpp:4207: error: ‘process_id_t’ has not been declared
idaapi.cpp:4211: error: ‘process_id_t’ has not been declared
idaapi.cpp:4217: error: ‘process_id_t’ has not been declared
idaapi.cpp:4220: error: ‘process_id_t’ has not been declared
idaapi.cpp:4223: error: ‘process_id_t’ has not been declared
idaapi.cpp:4227: error: ‘process_id_t’ has not been declared
idaapi.cpp:4233: error: ‘process_id_t’ has not been declared
idaapi.cpp:4237: error: ‘process_id_t’ has not been declared
idaapi.cpp:4241: error: ‘process_id_t’ has not been declared
idaapi.cpp: In function ‘ulong choose_sizer(void*)’:
idaapi.cpp:4506: warning: deprecated conversion from string constant to 
‘char*’
idaapi.cpp:4506: warning: deprecated conversion from string constant to 
‘char*’
idaapi.cpp: In function ‘char* choose_getl(void*, ulong, char*)’:
idaapi.cpp:4519: warning: deprecated conversion from string constant to 
‘char*’
idaapi.cpp:4519: warning: deprecated conversion from string constant to 
‘char*’
idaapi.cpp: In function ‘void choose_enter(void*, ulong)’:
idaapi.cpp:4546: warning: deprecated conversion from string constant to 
‘char*’
idaapi.cpp:4546: warning: deprecated conversion from string constant to 
‘char*’
In file included from idaapi.cpp:4739:
idaapi.h: At global scope:
idaapi.h:98: error: ‘process_id_t’ has not been declared
idaapi.h:99: error: ‘process_id_t’ has not been declared
idaapi.h:100: error: ‘process_id_t’ has not been declared
idaapi.h:101: error: ‘process_id_t’ has not been declared
idaapi.h:102: error: ‘process_id_t’ has not been declared
idaapi.h:103: error: ‘process_id_t’ has not been declared
idaapi.h:104: error: ‘process_id_t’ has not been declared
idaapi.h:105: error: ‘process_id_t’ has not been declared
idaapi.h:106: error: ‘process_id_t’ has not been declared
idaapi.h:107: error: ‘process_id_t’ has not been declared
idaapi.cpp:5789: error: variable or field ‘dbg_process_start’ declared void
idaapi.cpp:5789: error: ‘process_id_t’ was not declared in this scope
idaapi.cpp:5789: error: expected primary-expression before ‘tid’
idaapi.cpp:5789: error: expected primary-expression before ‘ea’
idaapi.cpp:5789: error: expected primary-expression before ‘char’
idaapi.cpp:5789: error: expected primary-expression before ‘base’
idaapi.cpp:5789: error: expected primary-expression before ‘size’

Original comment by andreas....@gmail.com on 23 Sep 2008 at 6:39

Attachments:

GoogleCodeExporter commented 9 years ago
We overcame the errors mentioned above and are now left with a problem when 
loading
init.py. It gives no error message other than that. Are anyone else on this list
familiar with these kind of problems? 

I have attached two patched which is necessary for using idapython with IDA Pro 
5.3. 
1. a patch to the IDA Pro 5.3 SDK 
2. a patch to idapython

Andreas

Original comment by andreas....@gmail.com on 24 Sep 2008 at 4:37

Attachments:

GoogleCodeExporter commented 9 years ago
I believe the above patches fixed it. The problem I had with init.py was that I 
ran
python 2.4. When trying the program on a machine with python 2.5 ida2sql.py ran 
just
fine in idapython. I am willing to continue testing on IDA Pro 5.3 if that is 
needed.
It would be great if this patch set was available to others that use IDA Pro 5.3
through the official channels.

Original comment by andreas....@gmail.com on 24 Sep 2008 at 5:16

GoogleCodeExporter commented 9 years ago
I will do a complete patch merge for 5.3 really soon after 1.0 and make a branch
in SVN so we can start hammering on that one as soon as possible.

Thanks for the info and the patches.

Original comment by gergely.erdelyi on 27 Sep 2008 at 1:59

GoogleCodeExporter commented 9 years ago
This is pretty much history now. The plugin is included in the official IDA 5.4 
installation and the
patch has been merged to the official SDK.

Original comment by gergely.erdelyi on 22 Mar 2009 at 3:31