ich will mit QT auf eine SPS über die COM-Schnittstelle zugreifen. Hier für gibt es vom Hersteller eine Bibliothek für Visual C++ mit den Dateien .dll, .lib und .h, habe alle ins Projektverzeichnis kopiert, die .lib habe ich über "Bibliothek hinzufügen" eingebunden. Ich nutze den MSVC2015 32-bit Compiler. Mit Visual Studio funktioniert der Zugriff. Aber beim Ausführen mit QT kommen folgende Fehler:
"Fehler: LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__Open_ComPort@8" in Funktion "_main"."
"Fehler: LNK1120: 1 nicht aufgelöste Externe"
Quellcode:
.pro:
Code: Alles auswählen
QT += core
QT -= gui
CONFIG += c++11
TARGET = Easy
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
win32: LIBS += -L$$PWD/./ -lEASY_COM
INCLUDEPATH += $$PWD/.
DEPENDPATH += $$PWD/.
win32:!win32-g++: PRE_TARGETDEPS += $$PWD/./EASY_COM.lib
else:win32-g++: PRE_TARGETDEPS += $$PWD/./libEASY_COM.a
Code: Alles auswählen
#include <QCoreApplication>
#include <iostream>
#include "easyComApi.h"
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
cout << "Easy mit QT-Steuern" << endl;
cout << "Open_ComPort: " << Open_ComPort(3, 19200) << endl;
return a.exec();
}