Page268~270 11.3.4 wxWidgets项目配置

发布时间:2024年01月18日

项目w28_gui的项目配置:

一,编译选项,

-pipe
-mthreads
[[if (GetCompilerFactory().GetCompilerVersionString(_T("gcc")) >= _T("4.8.0")) print(_T("-Wno-unused-local-typedefs"));]]

1,? -pipe:一个编译过程的速度优化选项,即优选使用PIPE(操作系统提供的“管道”),而不是临时文件;

2, -mthreads:? 指示采用多线程库编译,这是必选项;

3, 第三行是根据相关条件生成的编译选项,当操作系统是Windows,编译器是gcc并且版本大于或等于4.8.0时,将用于关闭掉一项警告。结合编译环境,可以直接写成“-Wno-attributes”

__GNUWIN32__
__WXMSW__
wxUSE_UNICODE

1.?__GNUWIN32__: 表明这是mingw32编译环境下的Win32环境;

2.?__WXMSW__: 表明这是基于Microsoft Windows编译的wxWidgets库;

3. wxUSE_UNICODE: 表明当前wxWidgets库采用UNICODE编译选项。

? ? ? ? DEBUG目标下,还需要提供? __WXDEBUG__? 选项,以表示所使用的wxWidgets是带有附加的调试信息及调试代码。

二,链接选项

通用链接选项(Link settings)中,主要是加入了GNUWIN32的链接库,用于提供Windows操作系统的相关功能,包括:libkernel32.a? ?libuser32.a??libgdi32.a??libwinspool.a??libcomdlg32.a? ?libadvapi32.a? ?libshell32.a? ?libole32.a? ??liboleaut32.a? ?libuuid.a? ??libcomctl32.a? ??libwsock32.a? ?libodbc32.a

Other linker options:? ? ?-mthreads

DEBUG目标加入的是调试版本的wxWidgets库:libwxmsw28ud_core.a? ?libwxbase28ud.a? ?libwxpngd.a? ?libwxzlibd.a

Release目标中加入的是发行版本的wxWidgets库:libwxmsw28u_core.a? libwxbase28u.a? ?libwxpng.a? ?libwxzlib.a

三,搜索路径:

根节点:

${#wx}\include? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ?

${#wx}\include???

Debug:

${#wx}\lib\gcc_lib\mswud??
${#wx}\lib\gcc_lib? ? ? ? ? ?? ??
${#wx}\lib\gcc_lib\mswud

Release:

${#wx}\lib\gcc_lib\mswu? ? ??
${#wx}\lib\gcc_lib? ? ? ? ? ? ? ??
${#wx}\lib\gcc_lib\mswu?

表 11-2 wxWidgets头文件与库文件的搜索路径配置

ComplierLinkerResource compiler
根节点${#wx}\include?${#wx}\include?
Debug${#wx}\lib\gcc_lib\mswud??${#wx}\lib\gcc_lib? ?${#wx}\lib\gcc_lib\mswud
Release${#wx}\lib\gcc_lib\mswu?${#wx}\lib\gcc_lib? ? ? ? ?${#wx}\lib\gcc_lib\mswu

Resource complier(Windows下特有)

当前示例的项目采用静态版的? wxWidgets库(生成可执行的单一文件),如果需要改用动态库版本的wxWidgets库,只需将上述配置中的“gcc_lib”修改成“gcc_dll”即可。

文章来源:https://blog.csdn.net/yanzhenxi/article/details/135672077
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。