Skip to content
This repository has been archived by the owner on Apr 6, 2020. It is now read-only.

Latest commit

 

History

History
79 lines (56 loc) · 2.29 KB

README.md

File metadata and controls

79 lines (56 loc) · 2.29 KB

neo-hypervm

Virtual Machine for the NEO blockchain written in C++

Overview

neo-hypervm aims to be a virtual machine in C++ 100% compatible with the NEO standard.

Projects

  • Neo.HyperVM - C++ Native Virtual Machine
  • NeoVM.Interop - Interoperability for C# calls
  • NeoVM.Interop.Tests - Unit Tests
  • Neo.HyperVM.Benchmarks - Benchmarks

Installation

Visual studio (Windows Users)

For debugging the native source make sure to append the following line in **/Properties/launchSettings.json

"nativeDebugging": true

Copy binaries or create a symbolic link, also you can set NEO_HYPERVM_PATHenvironment variable with the path of the native library

cd C:\neo-hypervm\tests\NeoVM.Interop.Tests\bin\Debug\netcoreapp2.0
mkdir Windows
cd Windows
mkdir x86
mkdir x64

cd x86
cmd /c mklink Neo.HyperVM.dll C:\neo-hypervm\src\Neo.HyperVM\Win32\Debug\Neo.HyperVM.dll
cd ../x64
cmd /c mklink Neo.HyperVM.dll C:\neo-hypervm\src\Neo.HyperVM\x64\Debug\NeoVM.dll

Benchmarks

You can see the benchmarks here

Other

There is a Makefile in the root of the project. To build the VM source:

make

For cross compiling x86 from x64

apt-get install g++-multilib

Contributing

Feel free to contribute to this project after reading the contributing guidelines.

Before starting to work on a certain topic, create an new issue first, describing the feauture/topic you are going to implement and remember to use development branch.

License

  • Open-source MIT