C++;CMake链接错误:LNK1181:无法打开输入文件;x、 lib"; 尽管我对C++非常陌生,但我还是把这个旧的C++库暴露给Python,我用pybDun11和cFug来实现它。C++库链接到一个文件,这里称为“问题AddLoCult.Labb”。此.lib位于服务器驱动器上。当将C++代码绑定到Python时,需要包含CMAKLIST.TXT文件,包括所需文件的链接和链接。因为我没有CMake的经验,我很确定我在这里做错了什么

C++;CMake链接错误:LNK1181:无法打开输入文件;x、 lib"; 尽管我对C++非常陌生,但我还是把这个旧的C++库暴露给Python,我用pybDun11和cFug来实现它。C++库链接到一个文件,这里称为“问题AddLoCult.Labb”。此.lib位于服务器驱动器上。当将C++代码绑定到Python时,需要包含CMAKLIST.TXT文件,包括所需文件的链接和链接。因为我没有CMake的经验,我很确定我在这里做错了什么,c++,cmake,C++,Cmake,以下是我的CMakeList.txt文件供参考(文件名称已更改): 现在,这个CMakeList.txt包含在一个名为“some_project”的文件夹中。文件夹“some_project”中有“CMakeList.txt”和名为“src”的文件夹(上面列出了两个文件)。文件“mapping.cpp”使用名为“problem_old_library”的第三方库。但是,这会产生1个致命错误 LINK:致命错误LNK1181:无法打开输入文件'problemble\u old\u library.

以下是我的CMakeList.txt文件供参考(文件名称已更改):

现在,这个CMakeList.txt包含在一个名为“some_project”的文件夹中。文件夹“some_project”中有“CMakeList.txt”和名为“src”的文件夹(上面列出了两个文件)。文件“mapping.cpp”使用名为“problem_old_library”的第三方库。但是,这会产生1个致命错误

LINK:致命错误LNK1181:无法打开输入文件'problemble\u old\u library.lib'

这是什么原因造成的

我试图从文档中寻找帮助。但是,我发现在使用CMake时理解${something}符号非常混乱。我想要的是一个“硬编码”示例,说明如何与旧库链接,如果可能的话,最好不要使用${something}符号

/////////////// 以下是我的CMakeList.txt文件的附加版本供进一步参考,该文件包括指向此有问题的“x.lib”文件的所有路径组合:

我尝试了以下所有方法,并确认在每种情况下我仍然收到完全相同的错误


Br谢谢

当文件找不到时,似乎会出现LNK1181错误()

也许你的路径中包含空格。当你使用空格时,你必须像
\

路径
Z:/folder,空间名为/subfolder/lib

应该是这样的:

Z:/folder\ with\ space\ name/subfolder/lib
"Z:\\folder with space name\\subfolder\\lib"
另一方面,您似乎可以使用double\对文件夹进行如下操作:

Z:/folder\ with\ space\ name/subfolder/lib
"Z:\\folder with space name\\subfolder\\lib"

尝试两种方法查看结果

CMake建议在
target\u link\u库中使用库的完整路径
call.Like
target\u link\u库(一些项目公共“Z:/folder/subfolder/lib/problem\u old\u library.lib”)
。我确认这消除了问题,但引入了可能与CMakeList.txt文件的其他问题相关的新问题。谢谢!