ma
09 жовтня 2021 р. 19:20

QPsql Компиляция драйвера

64bit

Добрый день!
Хочу скомпилировать драйвер Postgresql под MSVC 2019 64, в результате не хочет компилироваться, хотя под MinGW 8.1.0 64 все прекрасно компилируется. До переустновки Windows все работало и компилировалось.

вот скрин компиляции
QPsql Компиляция драйвера

разница в .qmake.stash

QPsql Компиляция драйвера

в логе nmake валится и ошибка:

C:\psql\include\libpq-fe.h(23): fatal error C1083: ЌҐ г¤ Ґвбп ®вЄалвм д ©« ўЄ«о祭ЁҐ: stdio.h: No such file or directory,
NMAKE : fatal error U1077: "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\bin\Hostx 64\x64\cl.EXE" : возвращенный код "0x2"
Stop.

переменные среды

QPsql Компиляция драйвера

как побороть эту напасть ? в настройках мало чего понимаю. Понимаю что надо произвести настройку. только как? и где ?

2

Вам це подобається? Поділіться в соціальних мережах!

7
Алексей Внуков
  • 10 жовтня 2021 р. 15:24
  • (відредаговано)

на сколько помню, драйвер для Postgresql идет из коробки, чем он вас не устроил?
и удалите рускую локаль в VS, а сделайте английскую по умолчанию, VS так и не научился нормально работать с кирилицей

    ma
    • 12 жовтня 2021 р. 14:29

    А как использовать из коробки?
    удалил рускую локаль но ничего не поменялось.

      Алексей Внуков
      • 12 жовтня 2021 р. 16:39
      • (відредаговано)

      подключиться к базе

      1. QSqlDatabase db;
      2. db=QSqlDatabase::addDatabase("QPSQL");
      3. db.setHostName("localhost");
      4. db.setDatabaseName("db");
      5. db.setUserName("userdb");
      6. db.setPassword("passwd");
      7. db.setPort(5432);
      8. if(db.open())
      9. {
      10. qDebug()<<"DB opened"<<"work_db";
      11. }
      12. else
      13. {
      14. qDebug()<<"db not open"<<db.lastError()<<db.drivers();
      15. }
      16.  

      действия с локалью - чтоб нормально текст ошибки выводило, а не "ЌҐ г¤ Ґвбп ®вЄалвм д ©« ўЄ«о祭ЁҐ"
      п.с. db.drivers() - вернет список доступных драйверов

        ma
        • 12 жовтня 2021 р. 19:36

        из доступных только QSQLite, поэтому и хочу скомпилировать для Postresql

          Алексей Внуков
          • 12 жовтня 2021 р. 20:38

          а что у вас за Qt? у меня из коробки дает такой вывод

          1. db not open ("QSQLITE", "QODBC", "QODBC3", "QPSQL", "QPSQL7")
            ma
            • 13 жовтня 2021 р. 17:49

            все решил все работает в папку C:\Qt\5.15.2\msvc2019_64\bin закинул libpq.dll и qsqlpsqld.dll

              ma
              • 13 жовтня 2021 р. 17:52

              при компиляции драйвера из окна Qt 5.15.2 (MSVC2019 64 ) надо было запустить C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build\vcvars64.bat тогда компиляция выполняется без ошибок.

              Спасбо за помощь.

                Коментарі

                Only authorized users can post comments.
                Please, Log in or Sign up
                • Останні коментарі
                • Evgenii Legotckoi
                  16 квітня 2025 р. 17:08
                  Благодарю за отзыв. И вам желаю всяческих успехов!
                • IscanderChe
                  12 квітня 2025 р. 17:12
                  Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
                • AK
                  01 квітня 2025 р. 11:41
                  Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
                • Evgenii Legotckoi
                  09 березня 2025 р. 21:02
                  К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
                • VP
                  09 березня 2025 р. 16:14
                  Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…