繁体   English   中英

在Mac OS X上将Poco C ++库包含到Qt Quick Application(Qt Creator)中

[英]Including Poco C++ Libraries into Qt Quick Application (Qt Creator) on Mac OS X

我在构建包括Poco C ++库的Qt项目时遇到一些问题和麻烦。

我成功编译波科像他们所描述的文档使用终端和make的,而不是gmake具有以下配置(配置达尔文):

./configure --omit=Data/ODBC,Data/MySQL --no-tests --no-samples --static

执行make -s install库(.a和.dylib),头文件位于/usr/local/usr/local/include/Poco

然后,我创建了一个新的Qt Quick Application(使用Qt Creator)并用以下几行编辑了项目的.pro文件:

INCLUDEPATH += /usr/local/include
LIBS += -L"/usr/local/lib" -lPocoFoundationd -lPocoJSONd -lPocoNetd -lPocoUtild -lPocoXMLd
LIBS += -L"/usr/local/lib" -lPocoFoundation -lPocoJSON -lPocoNet -lPocoUtil -lPocoXML

在Qt项目的main.cpp文件中使用Poco时,例如Poco::Path

#include <QApplication>
#include <QQmlApplicationEngine>
#include "Poco/Path.h"

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")));

    Poco::Path p(true); // path will be absolute
    p.setNode("VMS001");

    return app.exec();
}

它没有建立。 找到头文件,自动补全也起作用。 但是我有两个错误:

:-1: error: symbol(s) not found for architecture x86_64
:-1: error: linker command failed with exit code 1 (use -v to see invocation)

我还尝试了其他配置,以编译Poco,使用Qt Creator的“添加库...”对话框,并将标头和库文件复制到我的项目目录中(当然更改了.pro文件中的路径)。 希望任何人都可以帮助我或在OS X上使用Poco创建Qt项目,并且它可以工作;-)

最后是一些环境信息:

  • Qt Creator 3.3.2(开源)
  • 基于Qt 5.4.1(Clang 6.0(Apple),64位)
  • OS X版本:10.10.2
  • Poco C ++(基本版)版本:1.6.0

在撰写本文时,我想到了以下想法:我的项目中是否启用了C ++ 11? 貌似没有 所以我加了

# Enables C++11. Qt 5+ required
CONFIG += c++11

到我的.pro文件中,它起作用了!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM