Calculating non-overlapping LZSS factorization using sdsl-lite based on a paper by Dominik Köppl - Non-Overlapping LZ77 Factorization and LZ78 Substring Compression Queries with Suffix Trees
cmake -DCMAKE_C_FLAGS="-fPIC" -DCMAKE_CXX_FLAGS="-fPIC" ...
g++ -std=c++11 -DNDEBUG -O3 -I/home/user/include -L/home/user/lib noLZSS.cpp -lsdsl -ldivsufsort -ldivsufsort64 -o noLZSS
g++ -shared -fPIC -std=c++11 -DNDEBUG -O3 -I/home/user/include -L/home/user/lib noLZSS.cpp -lsdsl -ldivsufsort -ldivsufsort64 -o noLZSS.so
import ctypes
noLZSS = ctypes.CDLL('./noLZSS.so')
noLZSS.nolzss.argtypes = [ctypes.c_char_p]
noLZSS.nolzss.restype = ctypes.c_int
noLZSS.nolzss('ABRACADABRA'.encode())