# Build from Source

If you would like to build Zen Protocol from source you can clone the master brach of <https://github.com/zenprotocol/zenprotocol> and build it.

### Linux

1. Install mono-devel from <http://www.mono-project.com/download>. If you choose to install via a package manager, add Mono's own repository first.
2. Install lmdb. The package name is liblmdb0 on Ubuntu and lmdb on Fedora.
3. Run the following:

```
./paket restore
msbuild src /property:Configuration=Release -m
```

### OSX

1. Install mono-devel from <http://www.mono-project.com/download>. If you choose to install via a package manager, add Mono's own repository first.
2. Install lmdb. You can get it via brew with `brew install lmdb`.
3. Run the following:

```
./paket restore
msbuild src /property:Configuration=Release -m
```

### Windows

Windows is not yet supported

## Run

### Linux and OSX

```
cd src/Node/bin/Debug
./zen-node
```

### Windows

```
cd src\Node\bin\Debug
zen-node.exe
```

## CLI

You can communicate with the node with `zen-cli`. Enter the `bin` directory of the node (`src/Node/bin/Debug | Release`) and run:

### Linux and OSX

```
./zen-cli --help
```

## License

This software is available under the Zen Protocol Software License, which may be viewed at [LICENSE.md](https://github.com/zenprotocol/zenprotocol/blob/master/LICENSE.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.zenprotocol.com/apps/headless/build-fromsource.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
