2017-02-14 34 views
0

Если я пытаюсь сослаться на внешнюю библиотеку TagLib в моем коде (например TagLib::FileRef f(path);), а затем, когда я строю свой проект Qt Creator, я получаю следующие ошибки,Ошибка связывания TagLib с Qt

symbol(s) not found for architecture x86_64 
linker command failed with exit code 1 (use -v to see invocation) 

и

Undefined symbols for architecture x86_64: 
    "_inflate", referenced from: 
     TagLib::zlib::decompress(TagLib::ByteVector const&) in libtag.a(tzlib.cpp.o) 
    "_inflateEnd", referenced from: 
     TagLib::zlib::decompress(TagLib::ByteVector const&) in libtag.a(tzlib.cpp.o) 
    "_inflateInit_", referenced from: 
     TagLib::zlib::decompress(TagLib::ByteVector const&) in libtag.a(tzlib.cpp.o) 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
make: *** [Opus.app/Contents/MacOS/Opus] Error 1 
21:06:29: The process "/usr/bin/make" exited with code 2. 
Error while building/deploying project Opus (kit: Desktop Qt 5.7.0 clang 64bit) 
When executing step "Make" 

Мой .pro файл,

QT  += core gui sql 

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 

TARGET = Opus 
TEMPLATE = app 


SOURCES += main.cpp\ 
     mainwindow.cpp \ 
    tabunit.cpp \ 
    tabholder.cpp \ 
    dbmanager.cpp \ 
    articleadditiondialog.cpp \ 
    articlefilemodel.cpp \ 
    directoryiterator.cpp \ 
    articleattributes.cpp 

HEADERS += mainwindow.h \ 
    tabunit.h \ 
    tabholder.h \ 
    dbmanager.h \ 
    articleproperty.h \ 
    articleadditiondialog.h \ 
    articlefilemodel.h \ 
    directoryiterator.h \ 
    articleattributes.h 

FORMS += mainwindow.ui \ 
    articleadditiondialog.ui 

LIBS += -L$$PWD/../../../Libraries/taglib-1.11.1/taglib/ -ltag 

INCLUDEPATH += $$PWD/../../../Libraries/taglib-1.11.1/include 

Под /Libraries/taglib-1.11.1/ у меня есть this.

Любая помощь будет оценена, спасибо.

ответ