【问题标题】:porting wxwidgets opengl application to not library dependent application将 wxwidgets opengl 应用程序移植到不依赖库的应用程序
【发布时间】:2011-10-10 11:49:30
【问题描述】:

我想移植不依赖于库的 wxwidgets opengl 应用程序。我至少希望它可以在没有附加库的情况下编译。我正在考虑将它移植到 MFC 或 WIN32。什么是最简单的?也许你有其他建议?

【问题讨论】:

  • 你确实意识到,MFC 只是另一个库,工作起来很像 wxWidgets。

标签: c++ visual-studio-2010 opengl mfc wxwidgets


【解决方案1】:

MFC 是迄今为止最简单的。如果您不想使用未随 Visual Studio 安装的库,这也是唯一现实的选择。

【讨论】:

  • 好的,但这会增加一个 .Net 依赖项,更不用说 Winforms 已被弃用。在那之后,它不再是真正的“C++”应用程序,充其量是“用于 CLR 的 C++”应用程序。
【解决方案2】:

您确实意识到,MFC 只是另一个库,其工作方式与 wxWidgets 非常相似。唯一的区别是,MFC 附带 Visual C++。但是,如果您要使用 GCC (MinGW) 进行编译,则必须以某种方式获取 MFC。

事件处理等的整个样板代码也很容易编写。我说:坚持使用 wxWidgets,它是跨平台的,得到很好的支持,如果您对安装和使用库感到害怕,那么您不应该进行编程。

【讨论】:

  • @Roel:诚然,不好的例子。但实际上我不太确定。至少 VC++5 附带了完整的 MFC 源代码,因此理论上可以将其移植到 GCC,当然事先清理所有编译器依赖项。但是有 Intel 编译器,MFC 可以与那个编译器一起使用。
  • 是的,如果要修改代码以使其正常工作,但根据这种推理,任何库都是“可移植的”。 IIRC存在严重问题;例如,使用 thunking 将窗口句柄与使用仅适用于 MSVC 的编译器详细信息的对象相关联。我不确定英特尔编译器,或者它是否真的可以与 MFC 一起使用——例如,粗略地看,我找不到英特尔声称它可以使用的页面。
  • 事实上 VS Pro 并更好地附带 MFC 的整个源代码。这样做是为了便于调试 MFC 应用程序。我不知道法律后果,但在 Windows 上使用 gcc 编译 MFC 应该是技术上可行的。
【解决方案3】:

虽然已经检查了一个答案,但按照问题的措辞来回答,答案是错误的。 MFC 只是另一个依赖项,尽管随 Visual Studio 一起提供。您仍然需要确保在用户系统上安装了正确的版本。解决这个问题的唯一真正方法是使用 WGL 的 Win32。然后你只依赖操作系统库。 (你可能仍然需要安装 vcredist 包……)

【讨论】:

    猜你喜欢
    • 2020-10-17
    • 1970-01-01
    • 2012-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-23
    • 2014-03-08
    • 1970-01-01
    相关资源
    最近更新 更多