https://github.com/thexxturboxx/ecc
Error correction code implementations in CoCoALib
https://github.com/thexxturboxx/ecc
cocoalib coding-theory ecc error-correcting-codes error-correction error-correction-codes
Last synced: 8 months ago
JSON representation
Error correction code implementations in CoCoALib
- Host: GitHub
- URL: https://github.com/thexxturboxx/ecc
- Owner: ThexXTURBOXx
- License: mit
- Created: 2022-10-13T14:48:49.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-01-31T09:05:30.000Z (about 2 years ago)
- Last Synced: 2024-10-14T14:08:01.575Z (over 1 year ago)
- Topics: cocoalib, coding-theory, ecc, error-correcting-codes, error-correction, error-correction-codes
- Language: C++
- Homepage:
- Size: 347 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ECC
Error correction code implementations in CoCoALib
## Purpose of this repository
This is the accompanying code for [Nico Mexis](https://nmexis.me/)' master's thesis "A Comprehensive Comparison of Fuzzy
Extractor Schemes Employing Different Error Correction Codes", available [here](https://doi.org/10.15475/ccfesedecc.2023).
## Setup (tested using CygWin and Ubuntu)
1. Download the [CoCoALib](https://cocoa.dima.unige.it/cocoa/cocoalib/) source code (tested with `0.99818`, snapshots
available [here](https://cocoa.dima.unige.it/cocoa/cocoalib/snapshot.shtml))
2. Extract the archive into `cocoalib/`
3. Maybe, you need to apply the patch mentioned in [Fix LaTeX errors](#fix-latex-errors)
4. Install [GMP](https://gmplib.org/) using your favorite package manager or compile it yourself
5. Install a valid LaTeX distribution like [TeXLive](https://www.tug.org/texlive/) or [MikTeX](https://miktex.org/)
6. Install the latest version of [txt2tags 2.7-dev](https://txt2tags.org/) along with a
compatible [Python](https://www.python.org/) version
7. Install the CoCoALib library and header files (depending on your setup, you might need to run this as an
admin): `./make_cocoalib.sh`
8. Setup CMake using the `cmake` command and appropriate arguments
9. If your CoCoALib version does not yet include `IsPrimitivePoly` (versions <0.99815), you need to uncomment the
functions in `include/util/utils.C` and `src/util/utils.C`
10. Build the resulting executables using `cmake --build` and appropriate arguments
## Fix LaTeX errors
**Update: CoCoALib >0.99817 should not have this issue anymore!**
In my tests, at least on Windows, there may be LaTeX compilation errors in the CoCoALib documentation that look similar
to this:
```
Doing LaTeX-->PDF
[[CoCoALib:LaTeX-->PDF]] Pass 1 of 3
!!!LaTeX error!!! -- see file tex/CoCoALib.log
make[1]: *** [Makefile:40: CoCoALib.pdf] Error 1
```
In order to fix those, open the file `cocoalib/doc/aux-txt2tags/cocoalib-doc.sty` and uncomment the following line:
```tex
%\newcommand{\htmladdnormallink}[2]{\href{#2}{#1}}
```