Error "connect: signal not found" on qt6 after cross compile.
-
Hi. I had build qBittorrent with qt6 for OpenWRT(aarch64). And if I run Qbittorrent I have got errors:
qt.core.qobject.connect: QObject::connect: signal not found in QLocalServer qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in Application qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in QNetworkAccessMan ager qt.core.qobject.connect: QObject::connect: signal not found in QNetworkAccessMan ager qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in QThread qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in DownloadHandlerIm pl qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No TLS backend is available qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No TLS backend is available qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.core.qobject.connect: QObject::connect: signal not found in QHttpThreadDelega te qt.core.qobject.connect: QObject::connect: signal not found in QNetworkReplyHttp Impl qt.core.qobject.connect: QObject::connect: signal not found in QFileSystemWatche r qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in Application qt.core.qobject.connect: QObject::connect: signal not found in Application qt.core.qobject.connect: QObject::connect: signal not found in QThread qt.network.ssl: No functional TLS backend was found qt.core.qobject.connect: QObject::connect: signal not found in Application qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.network.ssl: No functional TLS backend was found qt.core.qobject.connect: QObject::connect: signal not found in QThread qt.core.qobject.connect: QObject::connect: signal not found in QThread qt.core.qobject.connect: QObject::connect: signal not found in QTimer qt.core.qobject.connect: QObject::connect: signal not found in QThread qt.core.qobject.connect: QObject::connect: signal not found in QTimer ******** Information ******** To control qBittorrent, access the Web UI at http://localhost:8080 The Web UI administrator username is: admin The Web UI administrator password has not been changed from the default: adminad min This is a security risk, please change your password in program preferences. qt.core.qobject.connect: QObject::connect: signal not found in QThread qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No TLS backend is available qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No functional TLS backend was found qt.network.ssl: No TLS backend is available qt.network.ssl: No functional TLS backend was found qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
I can see qBittorrent through htop, but it doesn't not functional correctly. If I build qBittorrent with qt5 all work fine.
This is my cmake parametrs:CMAKE_OPTIONS += \ -DQT_HOST_PATH=/home/dmitriy/Qt/6.2.1/gcc_64 \ -DCMAKE_BUILD_TYPE="Release" \ -DQT_FEATURE_optimize_full=ON \ -DQT_FEATURE_gui=OFF \ -DQT_FEATURE_openssl_linked=ON \ -DQT_FEATURE_dbus=OFF \ -DQT_FEATURE_LinguistTools=ON \ -DQT_FEATURE_zstd=OFF \ -DQT_FEATURE_concurrent=OFF \ -DQT_FEATURE_printsupport=OFF \ -DQT_FEATURE_system_pcre2=OFF \ -DQT_FEATURE_widgets=OFF \ -DQT_FEATURE_testlib=OFF \ -DQT_BUILD_EXAMPLES=OFF \ -DQT_BUILD_TESTS=OFF \ -DFEATURE_icu=OFF \ -DBUILD_SHARED_LIBS=ON \ -DCMAKE_SKIP_RPATH=ON \ -DCMAKE_SKIP_INSTALL_RPATH=ON \ -DBUILD_qtwebview=OFF \ -DBUILD_qtwebsockets=OFF \ -DBUILD_qtwebengine=OFF \ -DBUILD_qtwebchannel=OFF \ -DBUILD_qtwayland=OFF \ -DBUILD_qtvirtualkeyboard=OFF \ -DBUILD_qttranslations=OFF \ -DBUILD_qttools=ON \ -DBUILD_qtsvg=OFF \ -DBUILD_qtshadertools=OFF \ -DBUILD_qtserialport=OFF \ -DBUILD_qtserialbus=OFF \ -DBUILD_qtsensors=OFF \ -DBUILD_qtscxml=OFF \ -DBUILD_qtremoteobjects=OFF \ -DBUILD_qtquicktimeline=OFF \ -DBUILD_qtquick3d=OFF \ -DBUILD_qtnetworkauth=OFF \ -DBUILD_qtmultimedia=OFF \ -DBUILD_qtlottie=OFF \ -DBUILD_qtlocation=OFF \ -DBUILD_qtimageformats=OFF \ -DBUILD_qtdoc=OFF \ -DBUILD_qtdeclarative=OFF \ -DBUILD_qtdatavis3d=OFF \ -DBUILD_qtconnectivity=OFF \ -DBUILD_qtcharts=OFF \ -DBUILD_qtactiveqt=OFF \ -DBUILD_qt5compat=OFF \ -DBUILD_qt3d=OFF \ -DBUILD_qtmqtt=OFF \ -DBUILD_qtopcua=OFF \ -DBUILD_qtcoap=OFF
And cmake log:
Build options: Mode ................................... release Optimize release build for size ........ no optimize_full .......................... yes Building shared libraries .............. yes Using C standard ....................... C11 Using C++ standard ..................... C++17 Using ccache ........................... no Using new DTAGS ........................ yes Relocatable ............................ yes Using precompiled headers .............. yes Using LTCG ............................. no Target compiler supports: Intrinsics without compiler architecture option yes Extensions ........................... NEON CRC32 Sanitizers: Addresses ............................ no Threads .............................. no Memory ............................... no Fuzzer (instrumentation only) ........ no Undefined ............................ no Build parts ............................ libs Qt modules and options: concurrent ............................. no Qt D-Bus ............................... yes Qt D-Bus directly linked to libdbus .... no gui .................................... no Qt Network ............................. yes printsupport ........................... no Qt Sql ................................. yes testlib ................................ no widgets ................................ no Qt Xml ................................. yes Support enabled for: Using pkg-config ....................... yes udev ................................... no Using system zlib ...................... yes zstd ................................... no Thread support ......................... yes Common build options: Linker can resolve circular dependencies yes Qt Core: backtrace .............................. no DoubleConversion ....................... yes Using system DoubleConversion ........ no GLib ................................... no ICU .................................... no Using system libb2 ..................... no Built-in copy of the MIME database ..... yes Tracing backend ........................ <none> Logging backends: journald ............................. no syslog ............................... no slog2 ................................ no PCRE2 .................................. yes system_pcre2 ........................... no CLONE_PIDFD support in forkfd .......... yes Qt Sql: SQL item models ........................ yes Qt Network: getifaddrs() ........................... yes IPv6 ifname ............................ yes libproxy ............................... no Linux AF_NETLINK ....................... yes openssl ................................ yes openssl_linked ......................... yes OpenSSL 1.1 ............................ yes DTLS ................................... no OCSP-stapling .......................... yes SCTP ................................... no Use system proxies ..................... yes GSSAPI ................................. no Brotli Decompression Support ........... no Qt Sql Drivers: DB2 (IBM) .............................. no InterBase .............................. no MySql .................................. no OCI (Oracle) ........................... no ODBC ................................... no PostgreSQL ............................. no SQLite ................................. yes Using system provided SQLite ......... no Qt Tools: Qt Assistant ........................... no QDoc ................................... no Clang-based lupdate parser ............. no Qt Designer ............................ no Qt Distance Field Generator ............ no Qt Linguist ............................ yes Mac Deployment Tool .................... no pixeltool .............................. no qdbus .................................. yes Qt Attributions Scanner ................ yes qtdiag ................................. no qtplugininfo ........................... yes Windows deployment tool ................ no
-
@Deema35 After a brief look into the source code if qBittorrrent: Starting with mainwindow.cpp there are a lot of connect statements in class constructors, the result of which is not read. The statements connecting slots/signals of Qt classes (eg QtabWidget in line 192 of mainwindow.cpp) look pretty fine. The majority of connects, however, handle internal signals and slots of qBittorrent. Having said that, the most likely scenario is that the source code uses Qt functionality that is still available in Qt 5 and no longer available as from version 6. Since aBittorrent seems to support Qt6 (looking at src.pro in the src subdue), you may want to file a bug report within the qBittorrent project.
-
Thank you I had created issue https://github.com/qbittorrent/qBittorrent/issues/15713
-
@AxelVienna said in Error "connect: signal not found" on qt6 after cross compile.:
After a brief look into the source code if qBittorrren
Seems you had very "brief" look...
It is easy to see from the report above that the problem is not only in the signals of the qBittorrent classes, but also in the signals of the Qt classes (there are even much more of them). We have several similar Issues on qBittorrent bug tracker, and they are all related to the build on OpenWRT, so I believe this is a OpenWRT specific problem (maybe even cross-compilation specific).
-
@glassez Well, brief is brief. That's what I said. After all,
connect
returns a boolean result, to tell (briefly) if it has succeeded or failed. Deliberate and consequent ignorance of such results in class constructors is a gamble. If you believe that the reason may be OpenWRT, so be it. I tend to believe in (and briefly summarize) what I see.