ファイルを解凍したいプロジェクトがあります。私はQuazipが私が望む実装に近いことを発見しました(チェック)が....
プロジェクトをビルドするとき、コンパイラは言う
Makefile.Release:241: 警告: ターゲットrelease/moc_quazipfile.o のコマンドをオーバーライドしています release\moc_quazipfile.cpp:40: 警告: 'static void QuaZipFile::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ' dllimport 属性なしで再宣言されました: 以前の dllimport は release\moc_quazipfile.cpp:48 を無視しました: 警告: 'QuaZipFile::staticMetaObjectExtraData' は、dll リンケージで参照された後、dllimport 属性なしで再宣言されました release\moc_quazipfile.cpp:52: 警告: 'QuaZipFile::staticMetaObject ' dll リンケージで参照された後、dllimport 属性なしで再宣言されました release\moc_quazipfile.cpp:61: 警告: 'virtual const QMetaObject* QuaZipFile::metaObject() const'dllimport なしで再宣言
release/moc_quazipfile.o' Makefile.Release:219: warning: ignoring
old commands for target
属性: 以前の dllimport は無視されました release\moc_quazipfile.cpp:66: 警告: 'virtual void* QuaZipFile::qt_metacast(const char*)'
は dllimport 属性なしで再宣言されました: 以前の dllimport は
release\moc_quazipfile.cpp:74 を無視しました: 警告: 'virtual int
QuaZipFile::qt_metacall(QMetaObject::Call, int, void* )' が dllimport 属性なしで再宣言されました: 以前の dllimport は無視されました
mingw32-make.exe[1]: ディレクトリを離れます `*
* *quazip_test-build-desktop-Qt_4_8_0_for_Desktop_- MinGW _Qt_SDK__Release' release\moc_quazipfile.cpp:48: エラー: 静的データ
メンバーの定義 'QuaZipFile::staticMetaObjectExtraData' の dllimport'd クラス mingw32-make.exe[1]: * [release/moc_quazipfile.o] エラー 1
mingw32-make.exe: * [release] エラー 2 13:29:01: プロセス
"C:\QtSDK\mingw\bin\mingw32-make.exe" がコード 2 で終了しました。プロジェクト quazip_test のビルド中にエラーが発生しました (ターゲット: デスクトップ) ビルド
ステップ 'Make' の実行時
。プロ:
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
メインウィンドウ.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
メインウィンドウ.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;
}
私は何を間違っていますか??
ブラジル