linking QuaZip with Qt 4.8.0 into project

拟墨画扇 提交于 2019-12-11 04:35:40

问题


I have a project where I want to unzip files. I have found Quazip to be close to the implementation I want(check), but....

when build the project the compiler says

Makefile.Release:241: warning: overriding commands for target
release/moc_quazipfile.o' Makefile.Release:219: warning: ignoring
old commands for target
release/moc_quazipfile.o'
release\moc_quazipfile.cpp:40: warning: 'static void
QuaZipFile::qt_static_metacall(QObject*, QMetaObject::Call, int,
void**)' redeclared without dllimport attribute: previous dllimport ignored release\moc_quazipfile.cpp:48: warning:
'QuaZipFile::staticMetaObjectExtraData' redeclared without dllimport attribute after being referenced with dll linkage
release\moc_quazipfile.cpp:52: warning:
'QuaZipFile::staticMetaObject' redeclared without dllimport attribute after being referenced with dll linkage
release\moc_quazipfile.cpp:61: warning: 'virtual const QMetaObject* QuaZipFile::metaObject() const' redeclared without dllimport
attribute: previous dllimport ignored release\moc_quazipfile.cpp:66: warning: 'virtual void* QuaZipFile::qt_metacast(const char*)'
redeclared without dllimport attribute: previous dllimport ignored
release\moc_quazipfile.cpp:74: warning: 'virtual int
QuaZipFile::qt_metacall(QMetaObject::Call, int, void*)' redeclared without dllimport attribute: previous dllimport ignored
mingw32-make.exe[1]: Leaving directory `
*
**quazip_test-build-desktop-Qt_4_8_0_for_Desktop_-MinGW_Qt_SDK__Release' release\moc_quazipfile.cpp:48: error: definition of static data
member 'QuaZipFile::staticMetaObjectExtraData' of dllimport'd class mingw32-make.exe[1]: * [release/moc_quazipfile.o] Error 1
mingw32-make.exe: *
[release] Error 2 13:29:01: The process
"C:\QtSDK\mingw\bin\mingw32-make.exe" exited with code 2. Error while building project quazip_test (target: Desktop) When executing build
step 'Make'

.pro:

QT       += core gui

TARGET = quazip_test
TEMPLATE = app

INCLUDEPATH += C:/QtSDK/QtSources/4.8.0/src/3rdparty/zlib

SOURCES += main.cpp\
        mainwindow.cpp \
    quazip/quazipnewinfo.cpp \
    quazip/quazipfile.cpp \
    quazip/quazip.cpp \
    quazip/quacrc32.cpp \
    quazip/qioapi.cpp \
    quazip/moc_quazipfile.cpp \
    quazip/JlCompress.cpp \
    quazip/quaadler32.cpp

HEADERS  += mainwindow.h \
    quazip/crypt.h \
    quazip/unzip.h \
    quazip/quaadler32.h \
    quazip/quazipnewinfo.h \
    quazip/quazipfileinfo.h \
    quazip/quazipfile.h \
    quazip/quazip_global.h \
    quazip/quazip.h \
    quazip/quacrc32.h \
    quazip/quachecksum32.h \
    quazip/JlCompress.h \
    quazip/ioapi.h \    
    quazip/zip.h

FORMS    += mainwindow.ui

mainwindow.h:

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include "quazip/quazip.h"
#include "quazip/quazipfile.h"


namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H

mainwindow.cpp:

#include "mainwindow.h"
#include "ui_mainwindow.h"


MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    QuaZip *temp = new QuaZip();
}

MainWindow::~MainWindow()
{

    delete ui;
}

What am I doing wrong??

BR

来源:https://stackoverflow.com/questions/9227977/linking-quazip-with-qt-4-8-0-into-project

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!