Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.59/29: Рейтинг темы: голосов - 29, средняя оценка - 4.59
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531

Установка OpenCV и Dlib в QT

07.03.2023, 15:25. Показов 7457. Ответов 80
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Начинаю переезд с консольного приложения VS в проект с QT.
у меня там были подключены две библиотеки OpenCV и Dlib

Вроде бы нашёл инструкцию как внедрить OpenCV в проект QT.
Для установки библиотеки нужен CMake он есть, но там нужно я так понял выбрать набор инструментов MinGW 32 или 64 бита. Проблема в том что я не помню какой я выбирал и выбирал ли вообще MinGW. Где мне можно в проекте QT посмотреть какой набор инструментов я выбрал 32 или 64 бит?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.03.2023, 15:25
Ответы с готовыми решениями:

Установка библиотеки dlib
Долго мучаюсь с установкой dlib http://dlib.net/compile.html. Документация не помогает. Подскажите как установить эту библиотеку.

Установка dlib ошибка
Здравствуйте, из-за чего появляется данная ошибка? C:\Users\Admin\AppData\Local\Temp\main.py>pip3 install dlib ...

Установка библиотеки dlib для Python 3х
Здравствуйте!:) Прошу Вас помочь мне! Возможно, кто-то из вас сталкивался с такой проблемой. Установлено: Python-3.6 32 bit ...

80
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 10:17  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от DrOffset Посмотреть сообщение
Должно работать уже
в том то и дело, что должно, а на практике, что-то как-то не так.


0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
20.03.2023, 10:26
SergeyKagen, пока отсюда не видно в чем именно проблема. Вот вы настроили этот (user) комплект Qt, что происходит, если вы пробуете с его использованием что-то собрать?
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 11:42  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
что происходит, если вы пробуете с его использованием что-то собрать?
а у меня не получится, что-то собрать, сборка неактивна. А когда создаётся проект появляется в дереве файлов только один файл CMakeList.txt и восклицательный знак напротив проекта. С надписью "Для этого проекта не включены комплекты". Но проблема в том, что я не могу включить комплекты так как всё серое и невыбираемое, даже тот комплект что я создал в ручную.

0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
20.03.2023, 13:05
SergeyKagen, попробуйте проект на базе qmake создать, без CMake пока.

Добавлено через 1 минуту
Вот у вас в предыдущем посте на заднем фоне диалог "настроить проект", вот там надо выбрать ваш комплект.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 15:01  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
попробуйте проект на базе qmake
ок на базе qmake он запустился. Правда с кучей предупреждений. Это нормально столько предупреждений?


и второе, я так понял у меня предыдущий проект был на базе cmake, его нужно заново создавать или есть способ открыть и поменять на qmake?
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
20.03.2023, 19:12
Цитата Сообщение от SergeyKagen Посмотреть сообщение
Это нормально столько предупреждений?
Нет, не особо. У меня такого нет. Но у меня Qt5, Qt6 нет.
Покажите лог сборки, где видно какие параметры ушли в g++.

Цитата Сообщение от SergeyKagen Посмотреть сообщение
я так понял у меня предыдущий проект был на базе cmake
Думаю, что ничего менять не надо. Нужно поставить cmake в MSYS2 и прикрутить его к сборке. Этот cmake будет знать про Qt и должен нормально собирать с ним проекты. Возможно и предупреждений не будет тогда.

Добавлено через 2 минуты
SergeyKagen, еще покажите содержимое файла \MSYS2\mingw64\share\qt6\mkspecs\win32-g++\qmake.conf.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 21:43  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Покажите лог сборки, где видно какие параметры ушли в g++.
произошла какая-то магия, я открыл программу вновь, чтобы скомпилировать попытаться найти логи (кстати я не знаю как вывести лог сборки) и ошибки ушли все. Провёл эксперимент, создал новый проект, опять ошибки появились, но если сразу скомпилировать второй раз, то ошибки уходят.

файл qmake.conf

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
include(../common/g++-win32.conf)
include(../common/windows-desktop.conf)
 
# modifications to g++-win32.conf
 
QMAKE_CC                = $${CROSS_COMPILE}gcc
QMAKE_CFLAGS            = -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj
QMAKE_CFLAGS_WARN_ON   += -Wextra
 
QMAKE_CXX               = $${CROSS_COMPILE}g++
QMAKE_CXXFLAGS            = -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj
QMAKE_CXXFLAGS_WARN_ON  = $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_EXCEPTIONS_ON += -mthreads
 
QMAKE_LINK              = $${CROSS_COMPILE}g++
QMAKE_LINK_C            = $${CROSS_COMPILE}gcc
 
QMAKE_CFLAGS_LTCG       = -flto
QMAKE_CXXFLAGS_LTCG     = $$QMAKE_CFLAGS_LTCG
QMAKE_LFLAGS_LTCG       = $$QMAKE_CFLAGS_LTCG
QMAKE_LFLAGS_EXCEPTIONS_ON += -mthreads
 
load(qt_config)
cmake - я так понял это
Bash
1
$ pacman -S cmake
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
20.03.2023, 22:05
Цитата Сообщение от SergeyKagen Посмотреть сообщение
но если сразу скомпилировать второй раз
Второй раз нет компиляции. Уже скомпилированное он не перекомпилирует, если явно не попросить (через меню "пересборка"). Так что второй раз нет предупреждений, потому что второй раз нет компиляции.
Т.к. предупреждения неопасные, можно просто их заглушить, если добавить в qmake.conf ключ -Wno-attributes в переменную QMAKE_CXXFLAGS. Но лучше бы это сделать после того, как удастся понять причину.

Цитата Сообщение от SergeyKagen Посмотреть сообщение
кстати я не знаю как вывести лог сборки
Внизу "4 Вывод сборки".

Цитата Сообщение от SergeyKagen Посмотреть сообщение
я так понял это
Да.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 22:07  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Внизу "4 Вывод сборки".
23:06:42: Выполняются этапы для проекта untitled...
23:06:42: Настройки не изменились, этап qmake пропускается.
23:06:42: Запускается: «D:\msys64\mingw64\bin\mingw32-make.exe» -j12
D:\msys64\mingw64\bin\qmake6.exe -o Makefile ..\untitled\untitled.pro -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug"
D:/msys64/mingw64/bin/mingw32-make.exe -f Makefile.Debug
mingw32-make[1]: Entering directory 'D:/CPP_PROJECTS/build-untitled-Desctop_QT_User-Debug'
D:\msys64\mingw64\share\qt6\bin\uic.exe ..\untitled\mainwindow.ui -o ui_mainwindow.h
g++ -c -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../untitled -I. -I../../msys64/mingw64/include/qt6 -I../../msys64/mingw64/include/qt6/QtWidgets -I../../msys64/mingw64/include/qt6/QtGui -I../../msys64/mingw64/include/qt6/QtCore -Idebug -I. -I/include -I../../msys64/mingw64/share/qt6/mkspecs/win32-g++ -o debug\main.o ..\untitled\main.cpp
D:\msys64\mingw64\share\qt6\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN --include D:/CPP_PROJECTS/build-untitled-Desctop_QT_User-Debug/debug/moc_predefs.h -ID:/msys64/mingw64/share/qt6/mkspecs/win32-g++ -ID:/CPP_PROJECTS/untitled -ID:/msys64/mingw64/include/qt6 -ID:/msys64/mingw64/include/qt6/QtWidgets -ID:/msys64/mingw64/include/qt6/QtGui -ID:/msys64/mingw64/include/qt6/QtCore -I. -ID:/msys64/mingw64/include/c++/12.2.0 -ID:/msys64/mingw64/include/c++/12.2.0/x86_64-w64-mingw32 -ID:/msys64/mingw64/include/c++/12.2.0/backward -ID:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/12.2.0/include -ID:/msys64/mingw64/include -ID:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/12.2.0/include-fixed ..\untitled\mainwindow.h -o debug\moc_mainwindow.cpp
g++ -c -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../untitled -I. -I../../msys64/mingw64/include/qt6 -I../../msys64/mingw64/include/qt6/QtWidgets -I../../msys64/mingw64/include/qt6/QtGui -I../../msys64/mingw64/include/qt6/QtCore -Idebug -I. -I/include -I../../msys64/mingw64/share/qt6/mkspecs/win32-g++ -o debug\mainwindow.o ..\untitled\mainwindow.cpp
g++ -c -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../untitled -I. -I../../msys64/mingw64/include/qt6 -I../../msys64/mingw64/include/qt6/QtWidgets -I../../msys64/mingw64/include/qt6/QtGui -I../../msys64/mingw64/include/qt6/QtCore -Idebug -I. -I/include -I../../msys64/mingw64/share/qt6/mkspecs/win32-g++ -o debug\moc_mainwindow.o debug\moc_mainwindow.cpp
In file included from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:9,
from D:/msys64/mingw64/include/qt6/QtWidgets/qwidget.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qmainwindow.h:8,
from D:/msys64/mingw64/include/qt6/QtWidgets/QMainWindow:1,
from ..\untitled\mainwindow.h:4,
from ..\untitled\main.cpp:1:
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:176:38: warning: 'QDataStream& operator<<(QDataStream&, const QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
176 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &in, const QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:177:38: warning: 'QDataStream& operator>>(QDataStream&, QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
177 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &in, QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:178:32: warning: 'size_t qHash(const QKeySequence&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
178 | friend Q_GUI_EXPORT size_t qHash(const QKeySequence &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:9,
from D:/msys64/mingw64/include/qt6/QtWidgets/qwidget.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qmainwindow.h:8,
from D:/msys64/mingw64/include/qt6/QtWidgets/QMainWindow:1,
from ..\untitled\mainwindow.h:4,
from ..\untitled\mainwindow.cpp:1:
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:176:38: warning: 'QDataStream& operator<<(QDataStream&, const QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
176 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &in, const QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:177:38: warning: 'QDataStream& operator>>(QDataStream&, QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
177 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &in, QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:178:32: warning: 'size_t qHash(const QKeySequence&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
178 | friend Q_GUI_EXPORT size_t qHash(const QKeySequence &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qpixmap.h:9,
from D:/msys64/mingw64/include/qt6/QtGui/qicon.h:10,
from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:11:
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:261:38: warning: 'QDataStream& operator<<(QDataStream&, const QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
261 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &, const QColor &);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:262:38: warning: 'QDataStream& operator>>(QDataStream&, QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
262 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &, QColor &);
| ^~~~~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qpixmap.h:9,
from D:/msys64/mingw64/include/qt6/QtGui/qicon.h:10,
from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:11:
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:261:38: warning: 'QDataStream& operator<<(QDataStream&, const QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
261 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &, const QColor &);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:262:38: warning: 'QDataStream& operator>>(QDataStream&, QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
262 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &, QColor &);
| ^~~~~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qguiapplication.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qapplication.h:13,
from D:/msys64/mingw64/include/qt6/QtWidgets/QApplication:1,
from ./ui_mainwindow.h:13,
from ..\untitled\mainwindow.cpp:2:
D:/msys64/mingw64/include/qt6/QtCore/qlocale.h:1120:33: warning: 'size_t qHash(const QLocale&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
1120 | friend Q_CORE_EXPORT size_t qHash(const QLocale &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qguiapplication.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qapplication.h:13,
from D:/msys64/mingw64/include/qt6/QtWidgets/QApplication:1,
from ..\untitled\main.cpp:3:
D:/msys64/mingw64/include/qt6/QtCore/qlocale.h:1120:33: warning: 'size_t qHash(const QLocale&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
1120 | friend Q_CORE_EXPORT size_t qHash(const QLocale &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:9,
from D:/msys64/mingw64/include/qt6/QtWidgets/qwidget.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qmainwindow.h:8,
from D:/msys64/mingw64/include/qt6/QtWidgets/QMainWindow:1,
from debug\../../untitled/mainwindow.h:4,
from debug\moc_mainwindow.cpp:10:
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:176:38: warning: 'QDataStream& operator<<(QDataStream&, const QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
176 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &in, const QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:177:38: warning: 'QDataStream& operator>>(QDataStream&, QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
177 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &in, QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:178:32: warning: 'size_t qHash(const QKeySequence&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
178 | friend Q_GUI_EXPORT size_t qHash(const QKeySequence &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qpixmap.h:9,
from D:/msys64/mingw64/include/qt6/QtGui/qicon.h:10,
from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:11:
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:261:38: warning: 'QDataStream& operator<<(QDataStream&, const QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
261 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &, const QColor &);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:262:38: warning: 'QDataStream& operator>>(QDataStream&, QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
262 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &, QColor &);
| ^~~~~~~~
g++ -Wl,-subsystem,windows -mthreads -o debug\untitled.exe debug/main.o debug/mainwindow.o debug/moc_mainwindow.o D:\msys64\mingw64\lib\libQt6Widgets.dll. a D:\msys64\mingw64\lib\libQt6Gui.dll.a D:\msys64\mingw64\lib\libQt6Core.dll.a -lmingw32 D:\msys64\mingw64\lib\libQt6EntryPoint.a -lshell32
mingw32-make[1]: Leaving directory 'D:/CPP_PROJECTS/build-untitled-Desctop_QT_User-Debug'
23:06:44: Процесс «D:\msys64\mingw64\bin\mingw32-make.exe» завершился успешно.
23:06:44: Прошло времени: 00:03.
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
21.03.2023, 08:55
SergeyKagen, вообще это похоже на какой-то баг. Причем баг старый, и вроде как давно исправленный. Похоже, что современный gcc опять его схватил.
Incorrect warning when applying dllimport to friend function
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 10:35  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
вообще это похоже на какой-то баг.
и что делать? Просто игнорировать и жить с этим дальше?
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
21.03.2023, 12:50
Цитата Сообщение от SergeyKagen Посмотреть сообщение
Просто игнорировать и жить с этим дальше?
Да. Как проигнорировать я показал в посте #48.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 22:06  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Да. Как проигнорировать я показал в посте #48.
спасибо.

Наконец-то открылся старый проект, правда теперь у него появились предупреждения и он перестал работать. Вернее так, когда запускаю через QT он не работает, но если запускаю exe из проекта, то всё запускается как надо.

Появились предупреждения - которых раньше не было.
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
21.03.2023, 22:10
Цитата Сообщение от SergeyKagen Посмотреть сообщение
Появились предупреждения - которых раньше не было.
Компилятор новее - это нормально. Больше проблем ловит.

Цитата Сообщение от SergeyKagen Посмотреть сообщение
Вернее так, когда запускаю через QT он не работает, но если запускаю exe из проекта, то всё запускается как надо.
"Не работает" - это что означает?
У вас случайно в PATH лишнего чего (других версий компилятора, например) не прописано?
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 23:01  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
"Не работает" - это что означает?
У меня есть таймер, который запускает функцию каждую секунду. Эта функция сканирует папку на наличие картинки. Если в папке появилась картинка, он определяет её имя, и возвращает имя картинки, чтобы та открылась в окне просмотра. При запуске через QT функция таймера почему-то не вызывается, а следствие не вызывается функция поиска в папке. Если я запускаю exe-шник отдельно без QT, то картинка удачно открывается в окне, т.е. всё работает.
У меня были уже проблемы с таймером в этой ветке Невозможно найти слот. Мне вроде их помогли решить, под ту версию QT а сейчас после обновления снова таймер прекратил вызываться, правда ошибок связанных с таймером больше не появляется.


В PATH у меня две ссылки
D:\msys64\mingw64\bin
и
D:\msys64\mingw32\bin

C++ (Qt)
1
2
3
4
5
6
void MainWindow::updateTime()
{
    std::cout << "Hello";
    get_new_file = get_file_name();
    if(old_file != get_new_file){ MainWindow::strech_image(); old_file = get_new_file; }
}
т.е. я добавил cout, чтобы выводил "Hello", если функция таймера отрабатывает, но увы, функция updateTime() не вызывается, а следствие не вызывается функция get_file_name и не возвращает линк картинки.

Хотя не смотря на предупреждения с MouseButtonPress, MouseButtonDblClick, MouseButtonRelease, MouseMove эти события/функции (мышки) отрабатываются.
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
21.03.2023, 23:10
Цитата Сообщение от SergeyKagen Посмотреть сообщение
У меня есть таймер, который запускает функцию каждую секунду. Эта функция сканирует папку на наличие картинки. Если в папке появилась картинка, он определяет её имя, и возвращает имя картинки, чтобы та открылась в окне просмотра. При запуске через QT функция таймера почему-то не вызывается, а следствие не вызывается функция поиска в папке. Если я запускаю exe-шник отдельно без QT, то картинка удачно открывается в окне, т.е. всё работает.
Путь к "папке" относительный? Если да, то тут все просто - у вас при запуске из IDE рабочий каталог приложения - другой, не тот, где лежит exe.

Добавлено через 1 минуту
Цитата Сообщение от SergeyKagen Посмотреть сообщение
но увы, функция updateTime() не вызывается
Вероятнее всего в коде просто ошибки были и раньше, а работало потому, что в С++ так бывает: некорректный код иногда работает.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 23:26  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Путь к "папке" относительный? Если да, то тут все просто - у вас при запуске из IDE рабочий каталог приложения
Ещё теперь походу iostreem не фурычит.

C++ (Qt)
1
2
3
4
5
6
    bool MainWindow::eventFilter(QObject *object, QEvent *event)
{
if(event->type() == QEvent::MouseButtonPress){
        std::cout << "Click";
    }
}
0
Покинул чат.
1133 / 728 / 195
Регистрация: 30.03.2021
Сообщений: 2,379
21.03.2023, 23:27
Цитата Сообщение от SergeyKagen Посмотреть сообщение
std::cout << "Hello";
попробуйте
#include <QDebug>
...
qDebug()<<"Hello";
внизу "вывод приложения"
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
21.03.2023, 23:29
SergeyKagen, в .pro
Bash
1
CONFIG += console
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 23:32  [ТС]
Цитата Сообщение от sdf45 Посмотреть сообщение
попробуйте
#include <QDebug>
значит по ошибке я посчитал, что функция таймера не работает, сейчас проверил, работает. Каждую секунду вызывает.
Да QDebug работает, а вот cout стандартный почему перестал, не понятно. Ещё одно предупреждение помимо событий мыши

_______________
D:\msys64\mingw64\include\qt6\QtCore\qbi tarray.h:18: предупреждение: 'size_t qHash(const QBitArray&, size_t)' redeclared without dllimport attribute after being referenced with dll linkage
In file included from D:/msys64/mingw64/include/qt6/QtCore/QtCore:33,
from ..\test\mainwindow.cpp:7:
D:/msys64/mingw64/include/qt6/QtCore/qbitarray.h:18:33: warning: 'size_t qHash(const QBitArray&, size_t)' redeclared without dllimport attribute after being referenced with dll linkage
18 | friend Q_CORE_EXPORT size_t qHash(const QBitArray &key, size_t seed) noexcept;
| ^~~~~
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.03.2023, 23:32

Установка dlib под Code::Blocks
Не могу разобраться, как подключить библиотеку dlib под Code::Blocks, нужна для того чтобы ресайзить png, можете подсказать как подключить...

установка opencv
Всем привет. Пытаюсь установить и подключить opencv к VS2015 года. В последних версиях opencv нет при распаковке папки x86, а есть только...

Установка OpenCV
Всем добрый вечер. Необходимо установить библиотеку OpenCV в MS Visual Srudio 2012, пытаюсь больше часа, а результата 0. Погуглил, нашёл...

Установка opencv
Люди добрые, выручайте! Третьи сутки не могу спать и.. установить opencv Пользуюсь этим руководством https://habr.com/ru/post/318846/ ...

Установка OpenCV
Всем привет ребята помогите с установкой OpenCV2.2. CMake выдает ошибку. &quot;Error in configuration process, project files may be...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru