【问题标题】:Using QJson library in Qt Creator under Ubuntu在 Ubuntu 下使用 Qt Creator 中的 QJson 库
【发布时间】:2012-10-08 02:41:07
【问题描述】:

我正在尝试在 Qt Creator 中创建的应用程序中使用 QJson 库。操作系统为Ubuntu 12.04 32位。

我使用 synaptic 安装 libqjson0 (0.7.1-6)。该库安装在

/usr/lib/i386-linux-gnu/libqjson.so.0
/usr/lib/i386-linux-gnu/libqjson.so.0.7.1

我试图通过右键单击我的项目并选择“添加库..”来将库添加到 Qt Creator。当我输入上面显示的 2 个路径中的任何一个时,文件名是红色的,表示它不正确。我创建了一个链接到 libqjson.so.0.7.1 的符号链接 libqjson.so。我现在可以使用 /usr/lib/i386-linux-gnu/libqjson.so 路径添加库。

现在是菜鸟问题:在应用程序的顶部,我添加了#include 。我得到一个错误'parser.h:没有这样的文件或目录。我在 /usr/libs/i386-linux-gnu 中搜索 parser.h 并没有返回任何结果。我需要在 parser.h 之前添加一些东西还是我错过了其他东西?

编辑: .pro 文件附在下面

#-------------------------------------------------
#
# Project created by QtCreator 2012-10-05T20:40:21
#
#-------------------------------------------------

QT       += core gui
QT       += network

TARGET = zf
TEMPLATE = app


SOURCES += main.cpp\
        zftest.cpp \
    api1_6.cpp

HEADERS  += zftest.h \
    api1_6.h

FORMS    += zftest.ui

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../../../../../usr/lib/qt4/plugins/crypto/release/ -lqca-ossl
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../../../../../../usr/lib/qt4/plugins/crypto/debug/ -lqca-ossl
else:symbian: LIBS += -lqca-ossl
else:unix: LIBS += -L$$PWD/../../../../../../usr/lib/qt4/plugins/crypto/ -lqca-ossl

INCLUDEPATH += $$PWD/../../../../../../usr/lib/qt4/plugins/crypto
DEPENDPATH += $$PWD/../../../../../../usr/lib/qt4/plugins/crypto

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../../../../../usr/lib/release/ -lqca
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../../../../../../usr/lib/debug/ -lqca
else:symbian: LIBS += -lqca
else:unix: LIBS += -L$$PWD/../../../../../../usr/lib/ -lqca

INCLUDEPATH += $$PWD/../../../../../../usr/include
DEPENDPATH += $$PWD/../../../../../../usr/include

OTHER_FILES += \
    README.txt

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../../../../../usr/lib/i386-linux-gnu/release/ -lqjson
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../../../../../../usr/lib/i386-linux-gnu/debug/ -lqjson
else:symbian: LIBS += -lqjson
else:unix: LIBS += -L$$PWD/../../../../../../usr/lib/i386-linux-gnu/ -lqjson

INCLUDEPATH += $$PWD/../../../../../../usr/lib/i386-linux-gnu
DEPENDPATH += $$PWD/../../../../../../usr/lib/i386-linux-gnu

【问题讨论】:

  • 请发布您的 .pro 文件。它应该有适当的 LIBS += ... 行以在您的项目中正确包含库
  • 我从 QJson sourceforge 站点加载了源代码,并在 Qt Creator 中编译生成了一个库。库文件夹不包含任何 .h 头文件。我在 qjson/include/QJson 下的源代码下载中找到了必要的文件。我编辑了 .pro 文件以指向包含的目录。该文件夹中的 Parser 文件包含一行“#include "../../src/parser.h"”。我没有将此解决方法标记为答案,因为我更喜欢使用 synaptic-installed 包。

标签: qt qt-creator qjson


【解决方案1】:

你还需要 libjson-dev 包。基于 deb 的发行版通常在 *-dev 包中提供包含文件。

安装后,您会在 /usr/include/qjson 中找到 parser.h 和其他头文件。

【讨论】:

    【解决方案2】:

    您的 .pro 文件中缺少这些行:

    INCLUDEPATH += folderwhereisinstalled/qjson/include
    
    LIBS += -Lfolderwhereisinstalled/qjson/lib -lqjson
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-24
      • 2013-07-30
      • 1970-01-01
      • 2011-04-20
      相关资源
      最近更新 更多