如何使用ezpwd reed-solomon纠错库

How to use ezpwd reed-solomon error correction library

本文关键字:纠错 reed-solomon ezpwd 何使用      更新时间:2023-10-16

我想生成QR码,为此我需要Reed-Solomon纠错编码和解码(用于将来阅读QR码)。我找到了这个商业图书馆:https://github.com/pjkundert/ezpwd-reed-solomon,我想试试。我从github下载了源代码,把ezpwd文件夹放在我的项目中,我试着使用这个示例代码:

#include <QCoreApplication>
#include <ezpwd/rs>
#include <vector>
#include <stdint.h>
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
vector<int8_t> data;

ezpwd::RS<255,251> rs;
rs.encode( data);
return a.exec();
}

但是出现这个错误:

dependent '..reed_solomon_lib_testrslib.h' does not exists

这是我第一次看到这样的东西,通常应该有一些头文件。h和源文件。cpp)。我正在搜索这个rslib.h,但在我从github下载的目录中没有这样的文件。我想我不知道每个人都知道的步骤,比如先建这个图书馆。

我无法重现您的错误,但似乎您忘记在make- or projectfile中的某个地方删除rslib.h。

要使用这个库,只需将github上的c++文件夹的内容复制到您的项目目录(您有一个包含c++ 11标准内联代码文件的ezpwd文件夹)。因为这些文件已经准备好可以使用了,所以您不需要修改制作文件或项目文件。只要包括#include <ezpwd/rs>就可以了。您可能需要添加以下行:

QMAKE_CXXFLAGS += -std=c++11

放到你的make- or project文件中,以方便c++11标准的使用。