lin
2025-08-01 633231e833e21d5b8b1c00cb15aedb62b3b78e8f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
Capstone source is organized as followings.
 
 
.                   <- core engine + README + COMPILE.TXT etc
├── arch            <- code handling disasm engine for each arch
│   ├── AArch64     <- ARM64 (aka ARMv8) engine
│   ├── ARM         <- ARM engine
│   ├── Mips        <- Mips engine
│   ├── PowerPC     <- PowerPC engine
│   ├── Sparc       <- Sparc engine
│   ├── SystemZ     <- SystemZ engine
│   ├── X86         <- X86 engine
│   └── XCore       <- XCore engine
├── bindings        <- all bindings are under this dir
│   ├── java        <- Java bindings + test code
│   ├── ocaml       <- Ocaml bindings + test code
│   └── python      <- Python bindings + test code
├── contrib         <- Code contributed by community to help Capstone integration
├── cstool          <- Cstool
├── docs            <- Documentation
├── include         <- API headers in C language (*.h)
├── msvc            <- Microsoft Visual Studio support (for Windows compile)
├── packages        <- Packages for Linux/OSX/BSD.
├── windows         <- Windows support (for Windows kernel driver compile)
├── suite           <- Development test tools - for Capstone developers only
├── tests           <- Test code (in C language)
└── xcode           <- Xcode support (for MacOSX compile)
 
 
Follow instructions in COMPILE.TXT for how to compile and run test code.
 
Note: if you find some strange bugs, it is recommended to firstly clean
the code and try to recompile/reinstall again. This can be done with:
 
   $ ./make.sh
   $ sudo ./make.sh install
 
Then test Capstone with cstool, for example:
 
   $ cstool x32 "90 91"
 
At the same time, for Java/Ocaml/Python bindings, be sure to always use
the bindings coming with the core to avoid potential incompatibility issue
with older versions.
See bindings/<language>/README for detail instructions on how to compile &
install the bindings.