静态链接时出现wxWidgets LNK 1104错误
大家好,我正在尝试将wxWidgets www.example.com链接3.2.2.1到我的项目。当我用MDd/MD(共享库)和VC_lib目录链接时,它没有问题。在这个项目中,我需要它使用Mtd/Mt(静态库),但我一直收到这个错误:
错误LNK 1104无法打开文件“wxbase31u.lib”PDFiumWxWidget D:....\链接11
库是我自己使用MSv 2019构建的静态版本,方法是选择wx_vc17.sln中的所有项目,并将代码生成中的设置更改为调试模式的Mtd和发布模式的Mt。然后我批量构建所有项目。
我已经有了生成的vc_lib目录作为链接器的搜索目录。还尝试添加所有生成的.lib文件作为输入,也没有帮助。
项目设置如下:在Windows 10上,MVS 2019,x86项目,发布,使用Mt,使用c++ 17。
搜索Wxwidgets库,我根本找不到名为“wxbase31u.lib”的文件。
如果有人能给我点提示我会很感激的先谢了.
2条答案
按热度按时间yc0p9oo01#
当你使用wxWidgets 3.2的时候,你不应该链接
wxbase31u.lib
,这是wxWidgets 3.1库的名字,你不需要说这个库的名字来自哪里,但是在你的源代码/项目中找到它,你可能只需要用正确的/最新的名字替换它。为了避免将来出现这样的问题,我强烈建议按照文档中的说明使用
wxwidgets.props
,这样您就可以始终自动链接到正确的库。cld4siwp2#
感谢所有给出答案的人,有两个问题,首先是VZ.说的,其次是包含的目录的顺序。它们必须按照这个顺序,否则可能会出错:
$(WXWIN)\包含\msvc;$(WXWIN)\包含