麦田

不积跬步无以至千里.

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

设置.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)。为此,请先编辑主文件,然后修改要与之不同的文件。

posted on 2025-09-15 15:12  一些记录  阅读(13)  评论(0)    收藏  举报