mnyoshie / qrlc

Quantum Resistant Ledger in C

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

# QRL utilities in C

Still in its draft

Based from github.com/theqrl/qrl

Requires:

-lcrypto -lleveldb -ljson-c -lsnappy -lpthread


Build dependencies: `libbost-dev`

# Building on Linux. Ubuntu 

```
sudo apt install lib{leveldb,json-c,ssl}-dev
make -j4
```

# Building on Windows. Msys2 (ucrt64)

```
pacman -S mingw-w64-ucrt-x86_64-{leveldb,json-c,boost,openssl,gcc,make}
make -j4

```
Note that ASan isn't supported on non LLVM/Clang based environent on msys2,
so remove those `-fsanitize=address` if it is been set.

## Test

This would retrieve valid blocks from the mainnet and feed it to qrlc for testing.

```
make -C src test
```

# Cross compiling






# Known building issues

Compiling with gcc produces linker from undefined symbols in librandomx.a. 
This seems to be a problem when linking a C++ library [which uses the C++
standard libs] using a C compiler. And that C compiler couldn't properly
call ld with appropriate flags needed by a C++ library. Either (1) use a C++
compiler, or (2) pass appropriate linker flags with `-Wl,someflags` or some
library when using a C compiler or (3) use the C compiler to only compile
into .o objects and use a C++ compiler to link those objects.

# License

Parts of this source directory are written by the QRL/C contributors and others.

See the accompanying notice at every sources for it's author
and license.

About

Quantum Resistant Ledger in C


Languages

Language:C 73.4%Language:C++ 22.2%Language:Assembly 3.9%Language:Makefile 0.4%Language:Vim Script 0.0%