Я скачал исходный код QT 4.8.1 (везде коммерческая версия). И скомпилировал 64-битную версию QT с Visual Studio 2008 Pro под Windwos 7 64bit.
После этого я создал простой проект приложения QT в vs2008.
Но если я добавлю класс QSslError для тестирования в свой код, как показано ниже.
#include <QSslError>
..
Qt64Test::Qt64Test(QWidget* parent, Qt::WFlags flags): QMainWindow(parent, flags)
{
ui.setupUi(this);
QSslError a;
}
То при компиляции я получаю ошибку C2065.
1>. \ Qt64test.cpp (10): ошибка C2065: 'QSslError': неопределенный идентификатор
Но шапка включена!
QTDIR настроен правильно. И все настройки пути включения QT также правильно установлены.
Я не знаю, почему компилятор vs2008 не видит этот идентификатор.
Файл заголовка (qsslerror.h) выглядит так:
#ifndef QSSLERROR_H
#define QSSLERROR_H
#include <QtCore/qvariant.h>
#include <QtNetwork/qsslcertificate.h>
QT_BEGIN_HEADER
QT_BEGIN_NAMESPACE
QT_MODULE(Network)
#ifndef QT_NO_OPENSSL
class QSslErrorPrivate;
class Q_NETWORK_EXPORT QSslError
{
public:
enum SslError {
NoError,
//..
(И QT_NO_OPENSSL не определен в моем коде.)
1 ответ
Вероятно, ваша сборка Qt не была настроена с поддержкой OpenSSL. Определение будет в qconfig.h
qconfig.h
или библиотеку Qt придется перекомпилировать?
Похожие вопросы
Новые вопросы
qt
Qt - это кроссплатформенная среда разработки приложений, широко используемая для разработки прикладного программного обеспечения, которая может работать на различных программных и аппаратных платформах с минимальными изменениями в базовом коде или без таковых, при этом обладая мощью и скоростью собственных приложений. Qt доступен как с коммерческими, так и с открытыми лицензиями.