Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
C C++ Other
Branch: readme
Pull request Compare This branch is 2 commits ahead, 684 commits behind zerovm:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
api
doc
gtest
include
samples
src
.gitignore
Makefile
README.markdown
mknexe.sh

README.markdown

About

ZeroVM is a simple virtual machine. ZeroVM can run (and isolate) 64-bit x86 applications with a 32-bit address space. ZeroVM work under OS Linux on x86-64.

Installation

  1. get ZeroVM from github: https://github.com/Dazo-org/zerovm for example as archive: https://github.com/Dazo-org/zerovm/zipball/master
  2. install prerequisites: sudo apt-get install build-essential gcc-multilib g++-multilib libsdl1.2-dev texinfo libcrypto++-dev libssl-dev m4
  3. go to ZeroVM folder and run make
  4. if everything is ok you will see output of unit tests. in ZeroVM folder you can find "zerovm" executable

QUICKSTART

==================PRELIMINARY===================================================

ZeroVM quickstart

Ubuntu prerequisites

$ sudo apt-get install build-essential gcc-multilib g++-multilib libsdl1.2-dev texinfo libcrypto++-dev libssl-dev m4

Quickstart for installing ZeroVM (as a daemon) on Ubuntu (and possibly Debian).

ArchLinux prerequisites

$ sudo pacman -S autoconf automake binutils-multilib bison fakeroot flex libtool make patch pkg-config gcc-multilib sdl texinfo crypto++ openssl m4

Note that we can't use the base-devel metapackage, because it tries to pull in the non-multilib versions of gcc and binutils. The above simply installs all of the packages in the base-devel, replacing gcc and binutils with their multilib variants.

Installing ZeroVM

$ mkdir zerovm_quickstart
$ cd zerovm_quickstart
$ wget -O- https://github.com/Dazo-org/zerovm/tarball/master | tar xzf -
$ mv Dazo-org-zerovm-* zerovm
$ cd zerovm
$ make

Test ZeroVM

Ok if you see green RUN OK PASSED messages that everything is fine and you have ZeroVM compiled for your platform!

Let's try to run ZeroVM

$ ./zerovm

If you see a greeting message that means your ZeroVM was most probably correctly built and functioning.

ZeroVM SDK quickstart

For now, this is the NaCL SDK.

You need to obtain an SDK in order to be able to build samples and your own programs for ZeroVM. To download and install the SDK you need to consult following page (we recommend installing SDK in separate terminal window): https://developers.google.com/native-client/sdk/download.

For me it was (in a new terminal window):

$ cd ~/zerovm_quickstart
$ mkdir sdk
$ cd sdk
$ wget http://commondatastorage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/nacl_sdk.zip
$ unzip nacl_sdk.zip
$ cd nacl_sdk
$ ./naclsdk list
$ ./naclsdk update

Now you can use newly installed custom versions of GNU toolchain to build attached samples or your own programs

Troubleshooting

... error: expected specifier-qualifier-list before ‘AES_KEY’: missing library. look at (2) of Installation chapter and issue given command

Something went wrong with that request. Please try again.