首页 > 后端开发 > C++ > 当我将 wWinMain 与 Mingw 一起使用时,为什么我会收到对 WinMain@16 的未定义引用?

当我将 wWinMain 与 Mingw 一起使用时,为什么我会收到对 WinMain@16 的未定义引用?

Barbara Streisand
发布: 2024-11-05 10:59:02
原创
1055 人浏览过

Why am I getting an Undefined Reference to WinMain@16 when using wWinMain with Mingw?

wWinMain、Unicode 和 Mingw

在此讨论中,开发人员在使用 Mingw 作为编译器的 wWinMain 函数时遇到错误。本指南将探讨该问题并提供解决方案来解决该错误并解决使用 Unicode 的问题。

问题

开发人员遇到对 WinMain@16 的未定义引用使用Mingw编译程序时。将 wWinMain 替换为 Winmain,将 PWSTR 替换为 LPSTR 可以解决问题,但开发者想知道是否有更好的解决方案以及不使用 Unicode 的意义。

解决方案

对于旧版本的 Mingw,可以使用名为 mingw-unicode-main 的包装器。它在编译 Unicode 程序时提供对 wmain 和 wWinMain 的支持。使用此包装器的说明可以在项目的 GitHub 存储库中找到:https://github.com/coderforlife/mingw-unicode-main。

对于较新版本的 Mingw,应使用 -municode 选项,如 mingw-unicode-main 自述文件中所示。此选项启用 Mingw-w64 中对 Unicode 的支持。

Unicode 注意事项

使用 Unicode 并不总是一个重要问题。对于仅需要 ASCII 字符支持的简单程序,使用常规 (CHAR) 或 TCHAR 就足够了。但是,如果程序要处理非 ASCII 字符或国际化,建议使用 Unicode。

资源

  • [mingw-unicode-main](https ://github.com/coderforlife/mingw-unicode-main/)
  • [安装 MinGW-w64](https://sourceforge.net/projects/mingw-w64/files/Toolchains 目标 Win32/Personal Builds/rubenvb/gcc-4.7-release/)

以上是当我将 wWinMain 与 Mingw 一起使用时,为什么我会收到对 WinMain@16 的未定义引用?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板