capstone/bindings/python
2014-02-20 12:41:12 +08:00
..
capstone python: implement disasm_lite() method which only return tuples of some critical info. this improves performance by 15% 2014-02-20 12:10:52 +08:00
pyx python: implement disasm_lite() for Cython 2014-02-20 12:41:12 +08:00
Makefile python: update clean target for *.pyx files 2014-01-13 20:44:09 +08:00
README python: improve README for cython binding 2014-02-04 20:29:03 +08:00
setup.py python: bump python package version to 2.1 2014-02-20 12:22:53 +08:00
setup_cython.py Improve cython by using CCsInsn when possible 2014-01-13 15:50:58 +07:00
test.py python: correct CS_OPT_SYNTAX_NOREGNAME & add 1 more test to test.py. issue reported by Dang Hoang Vu 2014-01-08 10:23:07 +08:00
test_arm.py python: update following the change to detail mode in the core 2014-01-07 23:39:40 +08:00
test_arm64.py python: update following the change to detail mode in the core 2014-01-07 23:39:40 +08:00
test_detail.py python: update following the change to detail mode in the core 2014-01-07 23:39:40 +08:00
test_mips.py python: update following the change to detail mode in the core 2014-01-07 23:39:40 +08:00
test_ppc.py python: update following the change to detail mode in the core 2014-01-07 23:39:40 +08:00
test_x86.py python: update following the change to detail mode in the core 2014-01-07 23:39:40 +08:00

1. To install pure Python binding on *nix, run below command:

		$ sudo make install

2. For better Python performance, install cython-based binding with:

		$ sudo make install_cython

	Note that this requires cython installed in your machine first.
	To install cython, see section 3 below.
	
3. To install cython, you have to ensure that the header files
   and the static library for Python are installed beforehand.

	E.g. on Ubuntu, do:

		$ sudo apt-get install python-dev

	Depending on if you already have pip or easy_install
	installed, install cython with either:

		$ sudo pip install cython
	or:
		$ sudo easy_install cython

	NOTE: Depending on your distribution you might also be able to
	      install the required cython version using your repository.

	E.g. on Ubuntu, do:
	
		$ sudo apt-get install cython

	However, our cython-based binding requires cython version 0.19 or newer,
	but sometimes distributions only provide older version. Make sure to
	verify the current installed version before going into section 2 above.
	
	E.g, on Ubuntu, you can verify the current cython version with:

		& apt-cache policy cython

	Which should at least print version 0.19


This directory contains some test code to show how to use Capstone API.

- test.py
  This code shows the most simple form of API where we only want to get basic
  information out of disassembled instruction, such as address, mnemonic and
  operand string.

- test_detail.py:
  This code shows how to access to architecture-neutral information in disassembled
  instructions, such as implicit registers read/written, or groups of instructions
  that this instruction belong to.

- test_<arch>.py
  These code show how to access architecture-specific information for each
  architecture.


2. To install Python binding on Windows:

Recommended method:

	Use the Python module installer for 32/64 bit Windows from:

		http://www.capstone-engine.org/download.html


Manual method:

	If the module installer fails to locate your Python install, or if you have
	additional Python installs (e.g. Anaconda / virtualenv), run the following
	command in command prompt:

		C:\> C:\location_to_python\python.exe setup.py install

	Next, copy libcapstone.dll from the 'Core engine for Windows' package available
	on the same Capstone download page and paste it in the path:

		C:\location_to_python\Lib\site-packages\capstone\