在blackberry 10 sdk中添加QtCore库

Geo*_*aul 2 eclipse qt blackberry-10

大家好我正在使用cocos2d-x和黑莓创建一个简单的游戏.我需要一些地方来存储我的游戏设置,类似于ios和android中的共享首选项.我发现了一些使用qsettings的代码,但问题是我无法添加QtCore库.

我使用RightClick-> configure->添加库和标准BlackBerry Platform Library添加库.库已成功添加.

#include "dataProcessor.h"
#include <QtCore>

void dataProcessor::setup(){
    QDir dir;
    dir.mkpath("data/files/text");
    dir.cd("data/files/text");
}
Run Code Online (Sandbox Code Playgroud)

但是当我编译上面的代码时,我得到了错误 C:/Users/I076636/Documents/target_10_0_9_1673/qnx6/usr/include/qt4/QtCore/qatomic.h:45:28: fatal error: QtCore/qglobal.h: No such file or directory

但是我注意到了两件事,1.qglobal.h文件位于我所包含的QtCore目录中.2.如果我改变,请在qatomic.h内

#ifndef QATOMIC_H
#define QATOMIC_H

#include <QtCore/qglobal.h>
#include <QtCore/qbasicatomic.h>
Run Code Online (Sandbox Code Playgroud)

#ifndef QATOMIC_H
#define QATOMIC_H

#include <qglobal.h>
#include <QtCore/qbasicatomic.h>
Run Code Online (Sandbox Code Playgroud)

qglobal的错误发生了,现在qbasicatomic.h也出现了同样的错误.

我认为这很简单,比如QtCore关键字和include目录之间的错误映射......

请看看.

IDE是在eclipse上制作的.

cra*_*gmj 5

如果仔细查看错误消息,您可以了解出现了什么问题:

/target_10_0_9_1673/qnx6/usr/include/qt4/QtCore/qatomic.h:45:28:
fatal error: QtCore/qglobal.h: No such file or directory
Run Code Online (Sandbox Code Playgroud)

该错误不在您的收录中QtCore,而是QtCore/qatomic.h在第45行内部发生(您可以在中找到此文件[YOUR BBNDK DIRECTORY]/target_10_0_9_1673/qnx6/usr/include/qt4/QtCore/qatomic.h):

#include <QtCore/qglobal.h>
Run Code Online (Sandbox Code Playgroud)

qatomic.h已经在QtCore目录中,你也可以在qglobal.h那里找到一个目录.所以这意味着qatomic.h期望父目录位于包含路径上,因此包含<QtCore/qglobal.h>将起作用.

所以你只需要添加[YOUR BBNDK DIRECTORY]/target_10_0_9_1673/qnx6/usr/include/qt4到include目录中.

像这样做:

  1. 在Project Explorer中右键单击您的项目并选择 Properties
  2. 将树展开到C/C++ General/Paths and Symbols
  3. 将路径和符号框架中的配置更改为 [All configurations]
  4. 单击Includes标记并GNU C在"语言"列表中选择(或针对每种语言执行此操作).
  5. 单击Add...并键入${QNX_TARGET}/usr/include/qt4并按OK
  6. 单击Add...并键入${QNX_TARGET}/usr/include/qt4/QtCore并按OK

现在你的#include <QtCore>的包含应该可行.

接下来:链接错误;-)