./release\addeditaton.o:addeditaton.cpp:(.text+0x6ac2): undefined reference to `_imp___ZN10HTTPClient5abortEv'
Lines like that usually means at least either of the following issues:
You do not have the corresponding library installed.
You do not have the correct version installed with the symbols you rely on.
Your linkage options are not set up properly.
In this case, the complain is about the http client library, so let us check your project file first. You are using the -L
and -l
options correctly in the beginning, but not in the end, so let us clarify what they mean:
-L
means the path to the library.
-l
either means the library name or absolute path to the library.
Now, let us see what you write at the end where the issue is:
-L"./libHDP.a" \
#-l../../Qwt/qwt-5.2.0/lib/debug/qwt5 \
#-lqenc \
#-lzlibwapi \
-L"./zlib1.dll" \
#-lqextserialport \
-lsetupapi \
#-lqxmpp \
-L"./libqxmpp.a" \
#-ljson_lib \
#-lSerialPort1
-L"./libqextserialportd.a" \
Therefore, you should replace this with the following:
-lHDP
#-l../../Qwt/qwt-5.2.0/lib/debug/qwt5 \
#-lqenc \
#-lzlibwapi \
-lzlib1 \
#-lqextserialport \
-lsetupapi \
#-lqxmpp \
-lqxmpp.a \
#-ljson_lib \
#-lSerialPort1 \
-lqextserialportd
Alternatively, you could also specify the absolute path to the static libraries with the -l
option as mentioned above.
Note that you should not mix up things like QtSerialPort and QextSerialPort in your project, however. It is better to use QtSerialPort.