将muparser库包含到QtCreator中

时间:2014-02-12 14:53:52

标签: qt-creator

我需要将muparser库导入QtCreator。我使用MinGW构建它们作为静态库,因此我得到了libmuparser.a文件。 该库位于C:\ muparser \ muparser_v2_2_3中。 这是我的.pro文件:

QT       += core    
QT       -= gui    
INCLUDEPATH += C:\muparser\muparser_v2_2_3\include
LIBS        += -LC:\muparser\muparser_v2_2_3\lib

TARGET = muparsertest
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app    

SOURCES += main.cpp

这是我的主要内容:

#include <QCoreApplication>
#include <iostream>
#include "muParser.h"

using namespace mu;    

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    Parser p;

    return a.exec();
}

包含有效,因为有一个空的主我没有得到任何错误,但是当我尝试创建一个像发布的主要的muparser对象时,我得到这些错误:

error: undefined reference to `mu::Parser::Parser()'
error: undefined reference to `vtable for mu::Parser' 
error: undefined reference to `mu::ParserBase::~ParserBase()'
collect2.exe:-1: error: error: ld returned 1 exit status

我做错了什么?

1 个答案:

答案 0 :(得分:1)

这可能不是一个称职的答案,但有些消息来源建议将muparser库目录添加到DEPENDPATH(参见:http://www.qtcentre.org/threads/20258-Qt-and-muParser) 我的经验是:muparser.dll通常会重现这种问题。再次构建禁用muparser Makefile中的“动态”选项,然后添加 LIBS + = /libmuparser.a 在.pro文件中。