我使用cmake for 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我不明白,我做错了什么!
发布于 2020-10-27 16:07:41
-l标志表示如果是库名称,则应省略lib和.a或.dll.a部分,因此链接器标志应为-ltag。
此外,看起来您正在进行共享构建,因此您将需要taglib的共享构建(包括DLL文件和libtag.dll.a)。
您可以通过添加CMake标志-DBUILD_SHARED_LIBS:BOOL=ON来构建标记库的共享版本。
https://stackoverflow.com/questions/64545061
复制相似问题