LTO Network
  • Getting started
  • What is LTO Network?
  • Tutorials
    • Buying and staking LTO
      • Exchanges
        • Binance
        • AscendEX (Bitmax)
        • Uniswap
        • PancakeSwap
        • Other exchanges
      • Creating your LTO web wallet
      • Using the LTO token bridge
      • Staking LTO tokens
    • Mining
      • Setup your node wallets
      • Node management
      • Public community nodes
    • Anchoring
      • Hashing
    • LetsFlow
  • Wallets
    • LTO Web Wallet
      • Using Ledger
    • Universal Wallet
    • LTO CLI
    • Third-Party Wallets
      • Stakely.io wallet
        • Web wallet
        • Commandline
    • ERC20 Token Swap
  • Running a node
    • Public node
      • Installation Guide
        • Mainnet & Testnet
        • Requirements
        • Configuration
        • (Virtual) Machine
        • Nginx reverse proxy (optional)
        • Troubleshooting FAQ
      • Cloud installation
        • Alibaba Cloud
        • AWS Elastic Beanstalk
        • Google Cloud
        • IBM Cloud
        • Microsoft Azure
        • OKD (OpenShift)
        • Raspberry Pi (Expert)
        • Ubuntu Linux with Container
        • Windows with Container
      • REST API
        • Address
        • Wallet
        • Lease Transactions
        • Peers
        • Blocks
        • Utils
        • FAQ
      • Security Notes
      • FAQ
      • Exchange integration guide
    • Anchor node
      • Installation Guide
        • Linux
        • MacOS
        • Windows
      • REST API
    • Identity node
      • Installation guide
        • Linux
        • MacOs
        • Windows
      • Configuration
        • Trust network
      • REST API
    • Workflow node
      • Installation Guide
        • MacOS
        • Windows
        • Ubuntu Linux
      • REST API
  • Ownables
    • What are Ownables?
    • Making your first ownable
    • Ownables SDK
      • Prerequisites
      • Setup
    • Ownables Architecture
      • Smart Contract
      • Widget
    • Ownables Bridge
  • Templates Overview
  • Libraries
    • JavaScript
      • Accounts
      • Transactions
      • Event chain
      • Messages
      • Identities
      • HTTP Authentication
    • Python
      • Accounts
      • Public layer
    • PHP
      • Accounts
      • Identities
      • Public layer
      • Private layer
      • HTTP Authentication
      • Commandline scripts
    • Java
  • Protocol
    • Cryptography
    • Accounts
      • ED25519
      • secp256k1
      • secp256r1
    • Identities
      • Decentralized identifiers (DID)
      • Trust network
      • Verifiable credentials
    • Public layer
      • Transactions
        • Transfer
        • Lease
        • Cancel Lease
        • Mass Transfer
        • Set Script
        • Data
        • Anchor
        • Association
        • Revoke Association
        • Sponsorship
        • Cancel Sponsorship
        • Register
        • Burn
        • Mapped Anchor
        • Statement
      • Transaction fees
      • Consensus protocol
      • Activation Protocol
      • Data Structures
    • Private layer
      • Event chain
        • Event
      • Messaging
        • Sending messages
Powered by GitBook
On this page
  • Git
  • Rust and Cargo
  • clang
  • Node and npm
  • wasm-pack
  • Code editor (optional)
  1. Ownables
  2. Ownables SDK

Prerequisites

PreviousOwnables SDKNextSetup

Last updated 1 year ago

Summary

The following dependencies will be required to develop OWNABLES:

  • git

  • rustc and cargo versions 1.61.0 or later

  • clang

  • npm version 8.11.0 or later

  • node version 16.15.0 or later

  • wasm-pack version 0.10.2 or later

If you do not have the above dependencies on your machine, see the sections below for instructions.

Git

. Git is a version control system. It's used to fetch the Ownables SDK from GitHub.

Alternatively, you can use , which is more user-friendly.

Rust and Cargo

Ownable packages are built with Rust.

To install Rust and its package manager Cargo, follow the official . On Linux and macOS systems, this is done as follows:

$ curl https://sh.rustup.rs -sSf | sh

Verify the installation by checking the version:

$ cargo version

The version should be 1.61.0 or later.

clang

Failed to find tool. Is `clang` installed?

On Mac, clang should come pre-installed. On Linux you should be able to install it from the distro's repository. E.g. on Ubuntu Linux run

$ apt install clang

Node and npm

npm will be needed for running the local wallet instance and building the OWNABLES packages.

Verify the installation with:

$ npm -v
$ node -v

The node version should be 16.15.0 or later. The npm version should be 8.11.0 or later.

wasm-pack

The smart contracts written in Rust need to be compiled to WebAssembly. This way we can easily interact with them in our wallet.

wasm-pack makes building and working with rust-generated WASM easy.

$ curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh

Once that is done, verify the installation:

$ wasm-pack -V

The version should be 0.10.2 or later.

Code editor (optional)

Any editor you prefer will do the job, but there are a few recommendations worth looking into here.

Rust may depend on for building an ownable. Install clang, if you come across the following error

Install it as described on the official .

Follow the latest steps described in to install it. On Linux and macOS systems, this is done as follows:

First is the VSCode editor which you can download from the . Along with it, you may consider installing Rust plugin to help with syntax highlighting and other amenities.

Another great pick is the . JetBrains provides a Rust which is very useful to help with the development flow.

Download and install git
GitHub desktop
documentation guide from the Rust Book
clang
Node.js website
their official documentation
official source
this
WebStorm by Jetbrains
plugin