The Foundation for Interwallet Operability (FIO) or, in short, the FIO Protocol, is an open-source project based on EOSIO 1.8+.
- For information on FIO Protocol, visit FIO.
- For information on the FIO Chain, API, and SDKs, including detailed clone, build and deploy instructions, visit FIO Protocol Developer Hub.
- To get updates on the development roadmap, visit FIO Improvement Proposals. Anyone is welcome and encouraged to contribute.
- To contribute, please review Contributing to FIO
- To join the community, visit Discord
The build and install scripts are located in ./scripts directory.
While there are several options, there are two primary build targets; the default build with no arguments, ./fio_build.sh
, will build a dev-centric FIO chain, good for development and testing, and a release-centric build with the '-P' argument, ./fio_build.sh -P
, which is a pinned build (to clang) for formal testing and release to the BP community. Execute ./fio_build.sh -h
to output the complete usage.
The build script first installs all dependencies and then builds FIO. The script has several options, including '-P' (pinned build), '-i' (install directory), and '-o' (build type, i.e. Release, Debug, etc.). Providing no options will use default options, i.e. a local build directory, $HOME/fio, as the install directory.
{% include alert.html type="danger" title="An operational FIO build requires clang 8" content="FIO chain requires clang v8 as part of the LLVM requirements. When executing the build, specify '-P' for a 'pinned' build to ensure the correct LLVM versions are used." %}
To build, first change to the ~/fioprotocol/fio
folder, then execute the script as follows:
cd ~/fioprotocol/fio/scripts
./fio_build.sh -P
The build process writes temporary content to the build
folder. After building, the program binaries can be found at build/programs
.
For ease of contract development, FIO will be installed in the ~/fio
folder using the fio_install.sh script within the fio/scripts
folder. Adequate permission is required to install in system folders, e.g., /usr/local/bin
.
cd ~/fioprotocol/fio/scripts
./fio_install.sh