我想生成QR码,为此我需要Reed-Solomon纠错编码和解码(以便将来读取QR码)。我找到了这个商业图书馆:https://github.com/pjkundert/ezpwd-reed-solomon我想尝试一下。它说这个库适用于C ++和javascript,我想在C ++ QT下使用它。我从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_test\rslib.h' does not exists
这是我第一次看到这样的东西,通常应该有一些标题.h和sourse .cpp文件)。我正在搜索这个rslib.h但是我从github下载的目录中没有这样的文件。 我想我不知道每个人都知道的步骤,比如先建立这个库。请解释我该怎么做才能使用这个库。
答案 0 :(得分:1)
我无法重现您的错误,但似乎您忘记在make-或projectfile中的某处删除rslib.h。
要使用此库,只需将github上c ++文件夹的内容复制到项目目录(您有一个包含C ++ 11标准内联代码文件的ezpwd文件夹)。
由于这些都可以使用,因此您无需修改制作或项目文件。简单地包括#include <ezpwd/rs>
就像你一样。您可能需要添加以下行:
QMAKE_CXXFLAGS += -std=c++11
到您的make或project文件,以方便使用c ++ 11标准。