Closed cL0und closed 3 years ago
Hello, @cL0und. The env of Ghidra is jython. I wrote a blog to show how to import external package in jython.
Hello, @cL0und. The env of Ghidra is jython. I wrote a blog to show how to import external package in jython.
Thanks for your reply.But ghidraBB.py has certainly processed this step,in other words I should not config it once again, so I think error is not here.I guess this may be a version problem, therefore I want to know the version information in your experimental environment.
The version of python is 2.7 and the version of ghidra is 9.0.4.
Could you try to rebuilt blocks_pb2.py by using your own protoc. The protobuf file is here.
Sorry I don't know clearly what the "rebuilt blocks_pb2.py" means.BTW could you please give me your protobuf version?Thanks very much!
The protobuf version is 3.12.1.
The blocks_pb2.py
is generated by protoc. Please do the following to generate new blocks_pb2.py
:
protoc --python_out=$PWD --proto_path=../../protobuf_def/ blocks.proto
The protobuf version is 3.12.1.
The
blocks_pb2.py
is generated by protoc. Please do the following to generate newblocks_pb2.py
:protoc --python_out=$PWD --proto_path=../../protobuf_def/ blocks.proto
Thx,I will try it tomorrow. Good Night :)
Hi,I found the problem is that jython don't support lone surrogates. Finally I change a little source code of protobuf to skip the unimportant step and it didn't throw error again.But it's still weird that you didn't meet the problem in your env. Anyway, thanks for your help.
Hi, junxzm1990 when I used ghidraBB.py to generate result,the py gave me some error info like this. But I do have this dependency installed. Then I found the similar problem on stackflow which suggests me using command
touch __init__.py
under dependency dir.It worked, however, a new problem had arisen.
I also found a similar problem on a github issue of protobuf,whereas I could not get more useful information which can make me fix it.
The follow is my env: python 2.7.17
pip list asn1crypto (0.24.0) capstone (4.0.2) cryptography (2.1.4) enum34 (1.1.6) idna (2.6) ipaddress (1.0.17) keyring (10.6.0) keyrings.alt (3.0) pip (9.0.1) protobuf (3.17.2) pycrypto (2.6.1) pyelftools (0.27) pygobject (3.26.1) pyxdg (0.25) SecretStorage (2.3.1) setuptools (39.0.1) six (1.11.0) wheel (0.30.0)
ghidra_10.0.3_PUBLIC with jython 2.1.7
my cmdline: cd ~/x86-sok-master/disassemblers/ghidra && /root/ghidra_10.0.3_PUBLIC/support/analyzeHeadless ~ test_project -scriptPATH $PWD -postScript ghidraBB.py -deleteProject -import ~/test/test_switch
And,I want to know your env.
Thanks.