未定义的引用QJson :: Parser :: Parser

时间:2012-06-27 12:18:09

标签: c++ json qt undefined-reference qjson

我已成功(?)按照存档中的说明安装了QJson库。但是编译器给了我这个错误:

Undefined reference to QJSon::Parser::Parser().

我找到了已安装库文件的位置:它是/usr/local/include/json目录。但其中只有*.h个文件。

最小代码:

的main.cpp

#include <QtGui/QApplication>
#include <qjson/parser.h>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QJson::Parser parser;
    return a.exec();
}

我使用linux。

*.cpp个文件在哪里?我做错了什么?为什么图书馆不完整?

1 个答案:

答案 0 :(得分:2)

首先,您必须找到库文件而不是*.cpp文件。也许吧  有"libqjson.a""libqjson.so"之类的名称,并使用您的代码编译此库或将此密钥传递给

g++ -L(lib path) -lqjson

事实证明(见下面的评论),您的图书馆路径为/usr/local/lib,因此该行变为:

g++ -L/usr/local/lib -lqjson

使用Qt(qmake),只需将此行添加到.pro文件中,以便将这两个标志传递给g ++:

LIBS += -L/usr/local/lib -lqjson