Hallo!
Ich arbeite momentan an ein paar Erweiterungsmodulen für ein bestehendes Programm,
welches unter Win64 läuft.
Da deses Programm auf Qt 5.12.12 beruht verwende ich das bei meinen Modulen weiter.
Als IDE fungiert der QT-Creator 11.0.3.
Ich habe damit schon ein paar Erweiterungen realisiert, bislang ohne Probleme.
Im aktuellen Modul muss ich eine TCP-Verbindung herstellen, aber leider bekomme ich beim Ausführen
eine 'undefined reference' Meldung.
Hier der Code:
...........................................................
mainwindow.h:
#include <QScopedPointer>
#include <QtNetwork/QSslSocket>
..
class MainWindow : public QMainWindow
{
Q_OBJECT
..
private:
..
QScopedPointer<Ui::MainWindow> ui;
QScopedPointer<QSslSocket> socet_tcp_qrzlog;
public:
void readQRZLog();
.....................................................................
MainWindow::MainWindow(QSettings * settings, QWidget *parent)
: QMainWindow(parent)
, m_datadir {QStandardPaths::writableLocation (QStandardPaths::ApplicationsLocation)}
, m_settings {settings}
, ui(new Ui::MainWindow)
, socet_tcp_qrzlog (new QSslSocket)
{
.
}
void MainWindow::readQRZLog()
{..
QByteArray ba = socet_tcp_qrzlog->readAll();
..
}
-............................................................................
Im Quelltext scheint alles ok (keine Fehler oder Warnungen) aber beim ausführen:
\mainwindow.cpp:11: Fehler: undefined reference to `__imp__ZN10QSslSocketC1EP7QObject'
debug/mainwindow.o: In function `MainWindow::MainWindow(QSettings*, QWidget*)':
/mainwindow.cpp:11: undefined reference to `__imp__ZN10QSslSocketC1EP7QObject'
Die Zeile 11 ist die Zeile im Konstruktor, wo 'socet_tcp_qrzlog ' mit der Klasse 'socet_tcp_qrzlog-'
verbunden wird.
Daraus resultieren natürlich noch weitere Fehlermeldungen bei jeden Aufrudfvon 'ocet_tcp_qrzlog '.
Wenn ich mit 'F2' arbeite, um das Symbol zurückzuverfolgen, sind alle Rücksprünge ok, so das alle Links
zur Klasse und zur Bibliothek funktionieren.
Was mache ich falsch?