回复:wxWidgets 2.9.0
原始发布页
打开来源页面查看 1 个交叉存档
来自 Cdecker 的引用,2010 年 2 月 27 日,17:09:59
查看 2.8.10 的源代码后,似乎该版本也可以使用 unicode。
在 Windows 世界里,“unicode”指 UTF-16(wchar)。
2.8 有两种构建变体:ANSI 和 UTF-16(unicode)。UTF-16 版本就是 Debian 软件包提供的“unicode”版本。我相信 2.8 及其标为“unicode”的 UTF-16 构建,一直是论坛中所述构建问题的来源。我们此前使用 2.8 ANSI,是希望直接进入 UTF-8,而不必经历 UTF-16 地狱。我们无法用 UTF-16 编译。
2.9 只有一个版本,即 UTF-8。在 Windows 上,我们将代码页设为 UTF-8,因此在所有平台上我们的代码都是 UTF-8,wxWidgets 也以 UTF-8 与我们交互。在 Linux 上,我假定代码页已经是 UTF-8。统一使用 2.9 可以避免 2.8 的多构建混乱,而且国际化需要 2.9 的 UTF-8。
确保你阅读 build-unix.txt,并使用给出的 configure 参数配置 wxWidgets。
好奇,为什么提供 wxWidgets 2.9.0 会难得不可思议?如果你指的是用户,那正是我们静态链接它的原因。
要求这么多大型依赖很遗憾,但它们全都需要。至少在 Debian/Ubuntu 上,除了 wxWidgets 之外其他都可以作为软件包提供。最终他们会提供 2.9 软件包。
英文原文
展开英文原文
Quote from: Cdecker on February 27, 2010, 05:09:59 PM
Looking through the source of 2.8.10 it appears that unicode is possible with that version too.
In the Windows world, "unicode" means UTF-16 (wchar).
2.8 has two build variations, ANSI and UTF-16 (unicode). The UTF-16 version is the "unicode" version provided in the Debian package. I believe 2.8 and its UTF-16 build labelled simply "unicode" has been the source of build problems described in the forum. We were previously using 2.8 ANSI in anticipation of getting to UTF-8 without going through UTF-16 hell. We cannot compile with UTF-16.
2.9 has only one version, UTF-8. On Windows, we set the codepage to UTF-8, so on all platforms our code is UTF-8 and wxWidgets interfaces with us in UTF-8. On Linux I assume the codepage is already UTF-8. By standardizing on 2.9 we avoid the multi-build confusion of 2.8, and we need 2.9 for UTF-8 internationalization.
Make sure you read build-unix.txt and configure wxWidgets using the configure parameters given.
Curious, why is it incredibly hard to provide wxWidgets 2.9.0? If you mean for users, that's why we static link it.
It's unfortunate that we require so many big dependencies, but we need them all. At least on Debian/Ubuntu, all but wxWidgets are available as packages. Eventually they'll provide a 2.9 package.