首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Visual 2022中使用vcpkg会产生虚假的未解析外部符号链接器错误。

在Visual 2022中使用vcpkg会产生虚假的未解析外部符号链接器错误。
EN

Stack Overflow用户
提问于 2021-12-08 01:54:30
回答 1查看 766关注 0票数 3

我有一个MFC C++项目,它在Windows10上使用VisualStudio2022构建和运行非常好,这个项目根本不使用Qt。在我用vcpkg安装了QT6.2.1之后,项目停止了使用以下链接器错误构建:

代码语言:javascript
复制
1>Qt6EntryPoint.lib(qtentrypoint_win.cpp.obj) : error LNK2019: unresolved external symbol main referenced in function WinMain

同样,在我的项目中没有使用Qt6。进入项目的Configuration Properties并禁用Use Vcpkg使其重新构建。这里发生了什么,如何在不禁用vcpkg的情况下修复它?

我用VS项目向导和默认设置创建了一个新的C++ MFC。在启用vcpkg的情况下,它构建得很好。

我能给出的唯一合理的解释是,几代前,老的和老的Windows,我的项目使用了几个来自Qt4核心的类,这造成了问题,所以功能被删除了。在没有安装Qt的情况下,我继续在Windows上开发它。是否有可能某些对Qt的引用仍然潜伏在周围?怎么找到它?我检查了几次设置,都找不到。

我查看了库搜索(/VERBOSE:Lib)的顺序,在启用vcpkg -> Use Autolink之后,首先搜索vcpkg文件夹。是否有办法使链接器搜索系统文件夹第一?

下面是正在发生的事情:

代码语言:javascript
复制
1>    Searching C:\src\vcpkg\installed\\x64-windows\lib\Qt6EntryPoint.lib:
1>      Found WinMain
1>        Referenced in msvcrt.lib(exe_winmain.obj)
1>        Loaded Qt6EntryPoint.lib(qtentrypoint_win.cpp.obj)

不包括Qt6EntryPoint.lib和/NODEFAULTLIB:"Qt6EntryPoint.lib"没有任何影响。还有别的办法排除它吗?

EN

回答 1

Stack Overflow用户

发布于 2021-12-17 21:20:50

这意味着您应该在vcpkg中打开一个问题。

Qt6EntryPoint.lib需要移动到/ subfolder子文件夹中。

(我真的讨厌MSBuild自动链接/链接vcpkg的所有特性。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70269013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档