使用 SmartWin++ 需要哪些编译器和开发环境?

更新时间

SmartWin++ 官方明确支持的编译器只有三类:Microsoft Visual C++ 2003、Microsoft Visual C++ 2005 和 MinGW/gcc 3.4。下载包已经捆绑了所需依赖(包括 boost),你只需要自备一个 C++ 编译器,不必再单独下载 boost。如果手头没有商业版 Visual Studio,可以用免费的 Visual C++ 2003 Toolkit 或 Dev-C++ 起步,但前者还需要额外安装 Windows Server 2003 SP1 Platform SDK。

官方支持的编译器

编译器 说明
Microsoft Visual C++ 2003 官方支持
Microsoft Visual C++ 2005 官方支持
MinGW/gcc 3.4 官方支持

这三项是判断环境是否可用的硬条件。其他版本的编译器没有被列为官方支持,能否编译通过需要自行验证。

免费路线的两种组合

路线一:Dev-C++(推荐给新手)

下载与 MinGW/gcc 3.4.2 捆绑的 Dev-C++ 版本,编译器、IDE 和 SmartWin++ 所需依赖就都齐了。网站的说法是,这条路线自带免费 IDE,配置起来通常比用 VC++ Toolkit 手工搭建更省事。

路线二:Visual C++ 2003 Toolkit

需要两步:

  1. 安装免费的 Visual C++ 2003 Toolkit;
  2. 额外安装 Windows Server 2003 SP1 Platform SDK。

这条路线没有自带 IDE。网站提到可以搭配免费的 Eclipse 并配置为使用 VC++ Toolkit,但明确表示这部分“得靠自己摸索”,没有现成支持。

IDE 选择

  • 已有 Visual Studio C++ 7.1 或 2005:直接使用完整 IDE,环境最省心。
  • Dev-C++:免费 IDE,与 MinGW 捆绑,适合快速开始。
  • Sally:专门为支持 SmartWin++ 等库而做的 IDE,提供真正的所见即所得和 RAD 能力。网站特别推荐,但注明它仍处于早期 Beta 阶段,适合愿意尝鲜的人。
  • Eclipse + VC++ Toolkit:可行但需自行配置,无官方支持承诺。

非 Windows 平台的情况

SmartWin++ 最初用于替代 MFC 和 WTL,网站称借助 WineLib 现在也能用于非 Windows 系统,并提到 Wine 支持工作“进展很大”。但这属于进行中的工作,不属于上面列出的官方编译器支持范围,不能按“已在非 Windows 平台正式支持”来预期。

验证环境是否就绪

配置完成后,用你选定的编译器新建一个最小 SmartWin++ 工程并尝试编译链接。能通过编译和链接,说明编译器版本、依赖捆绑和 IDE 配置这条链路是通的;若在链接阶段报错,优先检查是否漏装了 Platform SDK(VC Toolkit 路线)或 Dev-C++ 是否为 MingW/gcc 3.4.2 捆绑版本。

常见卡点

  • 只装了 VC++ Toolkit 没装 Platform SDK:这是该路线最常见的缺失项,网站明确要求两者都装。
  • 以为要单独下载 boost:不需要,下载包已捆绑,除编译器外的一切都在里面。
  • 用非官方版本编译器:官方只列了三个版本,其他版本出问题不在支持范围内。
  • 在非 Windows 系统上直接开工:Wine 支持仍在推进中,不宜作为正式开发环境的前提。