LINUX.ORG.RU

Не собирается проект qt creator

 , ,


0

1

Использую проект для отправки почты https://github.com/bluetiger9/SmtpClient-for-Qt Делал по данному гайду https://www.youtube.com/watch?v=Ly8FzkNukrE Получил ошибку

mimebytearrayattachment.cpp:4: ошибка: undefined reference to `_imp___ZTV23MimeByteArrayAttachment'
ошибка: collect2.exe: error: ld returned 1 exit status
Не пойму в какую сторону смотреть Файл .pro
QT       += core gui network
 
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
 
CONFIG += c++11
 
# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS SMTP_BUILD
 
# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
 
SOURCES += \
    emailaddress.cpp \
    main.cpp \
    mainwindow.cpp \
    mimeattachment.cpp \
    mimebase64encoder.cpp \
    mimebase64formatter.cpp \
    mimebytearrayattachment.cpp \
    mimecontentencoder.cpp \
    mimecontentformatter.cpp \
    mimefile.cpp \
    mimehtml.cpp \
    mimeinlinefile.cpp \
    mimemessage.cpp \
    mimemultipart.cpp \
    mimepart.cpp \
    mimeqpencoder.cpp \
    mimeqpformatter.cpp \
    mimetext.cpp \
    quotedprintable.cpp \
    smtpclient.cpp
 
HEADERS += \
    SmtpMime \
    emailaddress.h \
    mainwindow.h \
    mimeattachment.h \
    mimebase64encoder.h \
    mimebase64formatter.h \
    mimebytearrayattachment.h \
    mimecontentencoder.h \
    mimecontentformatter.h \
    mimefile.h \
    mimehtml.h \
    mimeinlinefile.h \
    mimemessage.h \
    mimemultipart.h \
    mimepart.h \
    mimeqpencoder.h \
    mimeqpformatter.h \
    mimetext.h \
    quotedprintable.h \
    smtpclient.h \
    smtpmime_global.h
 
FORMS += \
    mainwindow.ui
 
TRANSLATIONS += \
    SMTP_QT_ru_RU.ts
 
# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
 
# Location of SMTP Library
SMTP_LIBRARY_LOCATION = $$PWD/../build-SMTP_QT-desktop_mingw-Debug/
 
win32:CONFIG(release, debug|release): LIBS += -L$$SMTP_LIBRARY_LOCATION/release/ -lSmtpMime2
else:win32:CONFIG(debug, debug|release): LIBS += -L$$SMTP_LIBRARY_LOCATION/debug/ -lSmtpMime2
else:unix: LIBS += -L$$SMTP_LIBRARY_LOCATION -lSmtpMime
 
INCLUDEPATH += $$SMTP_LIBRARY_LOCATION
DEPENDPATH += $$SMTP_LIBRARY_LOCATION

Скорее всего гдето тут ошибка

# Location of SMTP Library
SMTP_LIBRARY_LOCATION = $$PWD/../build-SMTP_QT-desktop_mingw-Debug/
 
win32:CONFIG(release, debug|release): LIBS += -L$$SMTP_LIBRARY_LOCATION/release/ -lSmtpMime2
else:win32:CONFIG(debug, debug|release): LIBS += -L$$SMTP_LIBRARY_LOCATION/debug/ -lSmtpMime2
else:unix: LIBS += -L$$SMTP_LIBRARY_LOCATION -lSmtpMime
 
INCLUDEPATH += $$SMTP_LIBRARY_LOCATION
DEPENDPATH += $$SMTP_LIBRARY_LOCATION

Линковщик не может найти либу в которой имплементирована _imp___ZTV23MimeByteArrayAttachment а вернее MimeByteArrayAttachment

sparks ★★★
()
Ответ на: комментарий от bad_master

Если в Qt Creator собираешь, и в нем настроены комплекты, то не нужно. Если в консоли, то нужно в переменную CMAKE_PREFIX_PATH добавить путь к месту установки библиотеки Qt.

rumgot ★★★★★
()