2017-09-22 09:38:45 +00:00
# C-IPFS
2017-11-02 10:52:19 +00:00
IPFS implementation in C, (not just an API client library).
## Quick start for users:
2017-11-02 10:42:17 +00:00
* **ipfs init** to create an ipfs repository on your machine
* **ipfs add MyFile.txt** to add a file to the repository, will return with a hash that can be used to retrieve the file.
2017-11-02 10:52:19 +00:00
* **ipfs cat [hash]** to retrieve a file from the repository
## For techies:
2017-11-02 10:54:03 +00:00
getting started: [https://github.com/ipfs/specs/blob/master/overviews/implement-ipfs.md]https://github.com/ipfs/specs/blob/master/overviews/implement-ipfs.md
specifications: [https://github.com/ipfs/specs]https://github.com/ipfs/specs
getting started: [https://github.com/ipfs/community/issues/177]https://github.com/ipfs/community/issues/177
libp2p: [https://github.com/libp2p/specs]https://github.com/libp2p/specs
2017-11-02 10:52:19 +00:00
## Prerequisites: To compile the C version you will need:
lmdb https://github.com/jmjatlanta/lmdb
c-protobuf https://github.com/Agorise/c-protobuf
c-multihash https://github.com/Agorise/c-multihash
c-multiaddr https://github.com/Agorise/c-multiaddr
c-libp2p https://github.com/Agorise/c-libp2p
And of course this project at https://github.com/Agorise/c-ipfs
2017-07-17 18:05:56 +00:00
The compilation at this point is simple, but not very flexible. Place all of these projects in a directory. Compile all (the order above is recommended) by going into each one and running "make all".