unicorn/bindings/python
BAYET 8987ad0fff Handle serialization of cpu context save (#1129)
* Handle the cpu context save in a more pythonic way, so the context can be serialized and reuse in an other process using the same emulator architecture and modes

* Fix type error ; mistakes a size_t uint64_t ; breaks in 32bit...
2019-09-07 19:09:17 +08:00
..
prebuilt Allow dlls to be copied out of prebuilt directory 2016-11-17 20:59:39 -08:00
unicorn Handle serialization of cpu context save (#1129) 2019-09-07 19:09:17 +08:00
Makefile Minor tweaks to python setup process; update gitignore 2016-09-12 14:06:50 -07:00
MANIFEST.in Basically, make python builds work as expected 2016-09-12 14:06:20 -07:00
README.TXT Cleanups/fixes for the library issue conglomerate (#897) 2017-09-24 22:33:01 +08:00
sample_all.sh fix file perms 2015-08-28 21:05:38 -07:00
sample_arm64.py Fix Python 3 samples (#836) 2017-05-15 09:11:22 +08:00
sample_arm64eb.py Fix Python 3 samples (#836) 2017-05-15 09:11:22 +08:00
sample_arm.py Add support for ARM application flags - APSR register (#776) 2017-03-09 22:28:03 +08:00
sample_armeb.py update armeb & arm64eb samples 2017-04-25 12:55:26 +08:00
sample_m68k.py make cleanup 2016-11-06 16:27:24 -08:00
sample_mips.py make cleanup 2016-11-06 16:27:24 -08:00
sample_network_auditing.py Get Python samples running on Python 3 2016-07-29 00:28:43 -07:00
sample_sparc.py make cleanup 2016-11-06 16:27:24 -08:00
sample_x86.py Fix naming in Python sample_x86.py (#961) 2018-05-07 09:44:27 +08:00
setup.cfg Fixes to make python distribution for windows work 2016-11-05 09:18:50 -07:00
setup.py Cleanups/fixes for the library issue conglomerate (#897) 2017-09-24 22:33:01 +08:00
shellcode.py update python binding samples, shellcode.py with 64bit syscall (#1052) 2019-01-15 14:57:11 +08:00

This documentation explains how to install the python binding for Unicorn
from source.

1. Installing on Linux:

	$ sudo python setup.py install

	This will build the core C library, package it with the python bindings, 
	and install it to your system.

    If you want to prevent the build of the native library during the python installation,
    set the environment variable LIBUNICORN_PATH. You may also set this to a directory
    containing libunicorn.so if you wish to use a verison of the native library other than
    the globally installed one.


2. Installing on Windows:

	Run the following command in command prompt:

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

	Next, copy all the DLL files from the 'Core engine for Windows' package available
	on the Unicorn download page and paste it in the path:

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


3. Sample code

	This directory contains some sample code to show how to use Unicorn API.

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

	- shellcode.py
	  This shows how to analyze a Linux shellcode.

	- sample_network_auditing.py
	  This shows how to analyze & interpret Linux shellcode.