设置.H
在 wxWidgets 中,setup.h 引用了头文件,它定义了将要或已经用于构建 wxWidgets 的所有可配置设置。
内容
用法
setup.h 和构建 wxWidgets
有时,您可能希望在构建 wxWidgets 库之前编辑 setup.h。这样做是为了启用或禁用某些功能(或类);这些功能、类及其依赖项在 setup.h 文件本身中都有详细记录。例如,您可能希望使用 wxUSE_EXTENDED_RTTI 构建库(以启用 XTI),但不使用 wxUSE_TIMER(因为您的应用程序没有使用它)。
如果您确实想要或需要编辑 setup.h 中的设置,则需要从官方网站下载 wxWidgets,并手动构建它。
- 主 setup.h
- 有一个主 setup.h 位于 “include/wx/<your build platform>” 中(这是您在构建 wxWidgets 之前可能想要编辑的文件)。
- 构建后配置 setup.h 文件
- 当您构建项目时,此安装文件将复制到构建配置唯一的目录中(例如,MSW 上的“wxWidgets Debug”构建会将该文件复制到“lib\mswd\wx\setup.h”)。当您对主 setup.h 进行任何更改时,下一个版本将自动将其复制到当前的每个配置 setup.h 上。
预构建包
如果您要针对预构建的 wxWidgets 包(例如 Ubuntu 或 Mac OS X 附带的包)构建应用程序,它们已经为该平台选择了适当的设置,您将无法更改这些设置。然而,大多数发行版应该已经在不同的配置下附带了多个 wxWidgets 版本,最常见的是调试和发布以及 unicode 和 ascii 配置。可以使用 wx-config 的适当选项来选择这些替代配置。如果您在查找用于构建该包的 setup.h 标头的 include 目录时遇到问题,您可以简单地运行“wx-config --cppflags”(还添加任何其他配置选项)。许多 linux 发行版和 Mac OS X 将此文件安装在不同的位置,但 wx-config 总是知道在哪里可以找到它。
常见问题
为什么这样设置?
然而,这真的非常简单。wx/msw 中有一个主 setup.h,它最初由构建过程复制到与配置相关的目录。这允许您为不同的配置使用不同的 setup.h。
现在,如果你问我这样做是否是个好主意,我现在绝对可以回答“不”。没有其他问题导致如此巨大的混乱,我相信再多的文档也无法解决它(尽管它们肯定会有所帮助)。当时,镜像 Unix 构建过程似乎是个好主意,但事实证明这是一个非常糟糕的主意。
但是,如果你问我是否要再次将其恢复为单个 setup.h,我也会回答“不”,因为像往常一样,这会使混乱量增加一倍,而不是解决问题。所以到目前为止,我们只能尝试向人们(无论如何,那些想听的人)解释当前系统是如何运作的。
我必须更改所有 8 个 setup.h 文件吗?
不需要,你只需要更改 include/wx/<your build platform>/setup.h。
我可以只更改一个并将其复制到其他 7 个上吗?
你可以但不应该,没有必要这样做。
为什么我需要为每个构建配置使用不同的 setup.h?反正它们不应该都是一样的吗?
有时让它们不同很方便。例如,您可能希望为 ANSI 生成启用 ODBC,但不为 Unicode(因为它不适用于 Unicode)。为此,请先编辑主文件,然后修改要与之不同的文件。

浙公网安备 33010602011771号