|
|
|
@ -11,22 +11,37 @@ Capstone requires no prerequisite packages, so it is easy to compile & install. |
|
|
|
|
want to compile in by directly editing the project "capstone-lib" from the |
|
|
|
|
Visual Studio solution "capstone-msvc.sln" before going to next steps. |
|
|
|
|
|
|
|
|
|
By default, all 7 architectures are compiled. |
|
|
|
|
In VisualStudio interface, modify the preprocessor definitions via |
|
|
|
|
"Project Properties" -> "Configuration Propertis" -> "C/C++" -> "Preprocessor" |
|
|
|
|
to customize Capstone library, as followings. |
|
|
|
|
|
|
|
|
|
Currently, Capstone supports 4 options, as followings. |
|
|
|
|
- CAPSTONE_HAS_ARM: support ARM. Delete this to remove ARM support. |
|
|
|
|
- CAPSTONE_HAS_ARM64: support ARM64. Delete this to remove ARM support. |
|
|
|
|
- CAPSTONE_HAS_MIPS: support Mips. Delete this to remove ARM support. |
|
|
|
|
- CAPSTONE_HAS_PPC: support PPC. Delete this to remove ARM support. |
|
|
|
|
- CAPSTONE_HAS_SPARC: support Sparc. Delete this to remove Sparc support. |
|
|
|
|
- CAPSTONE_HAS_SYSZ: support SystemZ. Delete this to remove SystemZ support. |
|
|
|
|
- CAPSTONE_HAS_X86: support X86. Delete this to remove X86 support. |
|
|
|
|
|
|
|
|
|
By default, all 7 architectures are compiled in. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Besides, Capstone also allows some more customization via following macros. |
|
|
|
|
|
|
|
|
|
- CAPSTONE_USE_SYS_DYN_MEM: delete this to use your own dynamic memory management. |
|
|
|
|
- CAPSTONE_DIET_NO: rename this to CAPSTONE_DIET to make the binaries more compact. |
|
|
|
|
- CAPSTONE_X86_REDUCE_NO: rename this to CAPSTONE_X86_REDUCE to make X86 binary smaller. |
|
|
|
|
|
|
|
|
|
By default, both DIET & X86_REDUCE modes are disable. |
|
|
|
|
|
|
|
|
|
- CAPSTONE_ARCHS: specify list of architectures to compiled in. |
|
|
|
|
- CAPSTONE_USE_SYS_DYN_MEM: change this if you have your own dynamic memory management. |
|
|
|
|
- CAPSTONE_DIET: use this to make the output binaries more compact. |
|
|
|
|
- CAPSTONE_X86_REDUCE: another option to make X86 binary smaller. |
|
|
|
|
|
|
|
|
|
For each option, refer to docs/README for more details. |
|
|
|
|
|
|
|
|
|
(1) Compile from source on Windows with Visual Studio |
|
|
|
|
|
|
|
|
|
- Open the Visual Studio solution called "capstone-msvc.sln" |
|
|
|
|
- Open the Visual Studio solution called "capstone.sln" |
|
|
|
|
- Choose the configuration and the platform you want: Release/Debug and Win32/Win64 |
|
|
|
|
- Build only the capstone-lib project, or the library along with all the tests |
|
|
|
|
|
|
|
|
|
(2) You can make sure the prior steps successfully worked by launching one of the |
|
|
|
|
testing binary |
|
|
|
|
testing binary (test*.exe) |
|
|
|
|