Qt PostgreSQL ошибка компоновщика при попытке добавить базу данных - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь установить соединение с базой данных postgre, но возникают ошибки компоновщика.

.pro файл:

QT -= gui

CONFIG += c++11 console
CONFIG -= app_bundle
CONFIG += sql

DEFINES += QT_DEPRECATED_WARNINGS
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

SOURCES += \
        main.cpp

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target


unix|win32: LIBS += -L$$PWD/../../PostgreSQL/12/lib/ -llibpq

INCLUDEPATH += $$PWD/../../PostgreSQL/12/include
DEPENDPATH += $$PWD/../../PostgreSQL/12/include

win32:!win32-g++: PRE_TARGETDEPS += $$PWD/../../PostgreSQL/12/lib/libpq.lib
else:unix|win32-g++: PRE_TARGETDEPS += $$PWD/../../PostgreSQL/12/lib/liblibpq.a

. cpp файл:

#include <QCoreApplication>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSql>
#include <QtSql/QSqlDriver>
#include <QTextStream>

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

    QSqlDatabase mDB=QSqlDatabase::addDatabase("QPSQL");


    return a.exec();
}

Просто так. Я пока даже не пытаюсь подключиться. Ошибки:

main.obj:-1: error: LNK2019: unresolved external symbol "__declspec(dllimport) public: __cdecl QSqlDatabase::~QSqlDatabase(void)" (__imp_??1QSqlDatabase@@QEAA@XZ) referenced in function main
main.obj:-1: error: LNK2019: unresolved external symbol "__declspec(dllimport) public: static class QSqlDatabase __cdecl QSqlDatabase::addDatabase(class QString const &,class QString const &)" (__imp_?addDatabase@QSqlDatabase@@SA?AV1@AEBVQString@@0@Z) referenced in function main
main.obj:-1: error: LNK2001: unresolved external symbol "__declspec(dllimport) public: static char const * const QSqlDatabase::defaultConnection" (__imp_?defaultConnection@QSqlDatabase@@2PEBDEB)

Postge 64-битный для Windows, компилятор, выбранный для этого приложения, также 64-битный MSVC2019. Пожалуйста, помогите.

1 Ответ

0 голосов
/ 14 июля 2020

Проблема была в файле .pro. Это должно быть:

QT += sql

, а не

CONFIG += sql
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...