链接器正在查找具有lib前缀的库,但在QtCreator/qmake中未使用-l标志

链接器正在查找具有lib前缀的库,但在QtCreator/qmake中未使用-l标志,qt,linker,qt-creator,qmake,Qt,Linker,Qt Creator,Qmake,我试图在我的项目中包含一个库,我自己编译了这个库。该编译的结果只是一个“fastrtps-1.9.lib”和一个“fastcdr-1.0.lib”+包含文件夹 现在,当我尝试将其包含在qmake中时,它总是抛出一个错误LNK1104“libfastcdr-1.0.lib”无法打开 :-1: Fehler: LNK1104: Datei "libfastcdr-1.0.lib" kann nicht geöffnet werden. 我知道-l标志用lib和.lib/.a包围了lib名称,但这是

我试图在我的项目中包含一个库,我自己编译了这个库。该编译的结果只是一个“fastrtps-1.9.lib”和一个“fastcdr-1.0.lib”+包含文件夹

现在,当我尝试将其包含在qmake中时,它总是抛出一个错误LNK1104“libfastcdr-1.0.lib”无法打开

:-1: Fehler: LNK1104: Datei "libfastcdr-1.0.lib" kann nicht geöffnet werden.
我知道-l标志用lib和.lib/.a包围了lib名称,但这是我包含库的方式:

win32: LIBS += $$PWD/../../../../_programme/FastRTPSv1.9/install/fastcdr/lib/fastcdr-1.0.lib

INCLUDEPATH += $$PWD/../../../../_programme/FastRTPSv1.9/install/fastcdr/include
DEPENDPATH += $$PWD/../../../../_programme/FastRTPSv1.9/install/fastcdr/include

win32: LIBS += $$PWD/../../../../_programme/FastRTPSv1.9/install/fastrtps/lib/fastrtps-1.9.lib

INCLUDEPATH += $$PWD/../../../../_programme/FastRTPSv1.9/install/fastrtps/include
DEPENDPATH += $$PWD/../../../../_programme/FastRTPSv1.9/install/fastrtps/include

为什么要查找lib前缀???

可能库的标题中有包含该硬编码名称的指令?我在217个标题中的一个中找到了以下内容:#pragma comment(lib,EPROSIMA_lib_prefix EPRO[…]“.lib”),但为什么在编译库时它不抛出lib前缀呢?我需要做什么才能得到lib前缀?我可以复制并重命名库文件吗?重命名库文件应该可以。您还可以尝试定义一些东西,使
#pragma comment
中的名称与磁盘上的任何名称匹配。我现在找到了该库的正确二进制文件,因此我不需要自己编译它。二进制文件包括所有lib文件(带或不带前缀)。但它仍然不起作用。使用-l标志,我得到LNK2005“已定义”错误。当使用不带标志的绝对路径时,它希望我包括带前缀的lib和不带前缀的lib,然后也会给我一个“已定义”的LNK2005错误。这是图书馆的问题吗?