【问题标题】:TagLib Qt project linking issueTagLib Qt 项目链接问题
【发布时间】:2020-10-26 21:13:08
【问题描述】:

我用 cmake 为 MinGW 构建了 TagLib 1.11.1 库,安装它并连接到我的 Qt 项目:

INCLUDEPATH += \
    "C:/Program Files (x86)/taglib/include/taglib" \

LIBS += \
    -L"C:/Program Files (x86)/taglib/lib" -llibtag

但是在运行我的程序后,我得到以下错误:

In function `Z5qMainiPPc':
undefined reference to `_imp___ZN6TagLib8FileNameC1EPKw'
undefined reference to `_imp___ZN6TagLib7FileRefC1ENS_8FileNameEbNS_15AudioProperties9ReadStyleE'
undefined reference to `_imp___ZN6TagLib7FileRefD1Ev'
collect2.exe: error: ld returned 1 exit status

我不明白,我做错了什么!

【问题讨论】:

    标签: c++ mingw qt-creator taglib


    【解决方案1】:

    -l 标志意味着您应该将lib.a.dll.a 部分放在库名称之外,因此链接器标志应该是-ltag

    此外,您似乎正在执行共享构建,因此您将需要 taglib 的共享构建(包括 DLL 文件和 libtag.dll.a)。

    您可以通过添加 CMake 标志 -DBUILD_SHARED_LIBS:BOOL=ON 来构建 taglib 的共享版本。

    【讨论】:

    • 请用您执行的步骤及其结果更新您的帖子。
    猜你喜欢
    • 2019-08-14
    • 1970-01-01
    • 1970-01-01
    • 2019-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-10
    相关资源
    最近更新 更多