在Code::Blocks中编译和使用wxWidgets3.0.0教程
Posted absudra
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Code::Blocks中编译和使用wxWidgets3.0.0教程相关的知识,希望对你有一定的参考价值。
注意,编译Code :: Blocks的对wxWidgets的3.0.0链接不是很稳定,但该库至少可以被正确编译,(只是使用的时候可能会有问题);CodeBlocks开发商都在努力开发使之更稳定。
这些是使用Code :: Blocks编译wxWidgets的说明。它们起初用于准备编译Code :: Blocks本身,但也可以是用于编译wxWidgets本身。
虽然这些指令是针对Windows操作系统中,但通过细小的调整可以应用到其他平台,因为我们使用的MinGW的。
MinGW的安装
Code :: Blocks安装MinGW教程的可以在这里找到。MinGW的安装
安装wxWidgets的源代码
wxWidgets的3.0.0的发行可以在找到wxWidgets的下载网站 。(请注意,还有一个可WinHelp的文件。)您可以在安装程序和一个压缩文件之间进行选择。你可以只使用zip文件,因为安装程序也是一个压缩版本。
如果使用普通的zip版本,请确保使用完整路径解压。否则,该目录将无法正确创建。
注:对于这些指令其余部分,我们称之为wxWidgets的目录<WXWIN>。你必须将它更改为您相应的目录(如“c:wxMSW-3.0.0wxWidgets-3.0.0”)。
注意:您不需要MSYS。此外,你不能有MSYS在你的路径,或者wxWidgets的编译将失败。因此,如果你已经安装MSYS,确保<MSYS> BIN是不是在你的路径编译的wxWidgets之前。 wxWidgets的,必须从“常规”命令行(cmd.exe的一样)编译,而不是从一个类似Unix的外壳。可能会出现相同的问题,如果Cygwin的是在路径中。
注:对于这些指令其余部分,我们称之为MinGW的目录<MINGW>。你必须将它更改为您相应的目录(例如“C: MinGW的“)。
检查make版本
如果您没有安装MinGW,你必须确保你正在使用的是比较新的版本以便能够正确的编译。打开命令提示符,然后键入:
cd <MINGW>in mingw32-make -v
该版本应该显示为3.80或更高版本。
wxWidgets的构建
改变目录和路径的设置
要编译wxWidgets,打开命令提示符窗口,并切换到wxWidgets目录:
cd /d <WXWIN>uildmsw
SET PATH=<MINGW>in
注意: 这通常是 SET PATH=C:MingGWin
清理wxWidgets的代码
现在,清理源码:
mingw32-make -f makefile.gcc USE_XRC=1 SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=1 USE_OPENGL=1 VENDOR=cb CXXFLAGS="-fno-keep-inline-dllexport" clean
注意:请确保您使用的正是这一步,并为下面的生成步骤相同的选项。clean目标使用这些变量,仅清理生成的目标文件和库文件的指定版本。(它不会清除所预期的文件,如果这些变量是不相同的。)
注意:如果您仍然有问题,清洗后进行编译,你可以尝试构建 MSW目录下手动删除gcc_dll目录。此目录是目标文件的存储位置。
构建wxWidgets的代码
当一切都干净就可以开始编译的wxWidgets:
的mingw32 - 让-F makefile.gcc USE_XRC = 1 SHARED = 1单片= 1 BUILD =释放的UNICODE = 1 USE_OPENGL = 1供应商= CB CXXFLAGS =“-FNO - 保持 - 直列DLLEXPORT”>的log.txt 2>&1
注意:如果你想编译wxWidgets的另一个版本(调试或非Unicode),你仍然要确保你的链接Code :: Blocks的建立一个单片的版本(一个大的DLL)。
耐心。这个步骤需要时间。确保没有任何编译错误,然后再继续。
编译Code :: Blocks
Code :: Blocks项目中使用
不需要任何补丁编译Code :: Blocks的与wxWidgets的3.0,只需使用项目/工作区,文件名 ??称中的_wx30并调用update30.bat更新的资源。
这并不意味着,一切运行完全无缺陷的,但我们正在努力就可以了。
一如往常,补丁是受欢迎的。
设置路径
最后才编译Code :: Blocks的本身,你需要设置的路径:
- 打开Code :: Blocks的项目(CodeBlocks_wx30.cbp)。
- 它会问你要定义一个全局变量命名为“WX30”
- 将路径设置为在已安装的wxWidgets(如“c:wxMSW-3.0.0wxWidgets-3.0.0”)。
- 全局变量cb_release_type设置为“-G”。 (当你输入的文字没有引号是必要的)
- 编译Code :: Blocks的。
注:zip.exe文件应该在你的PATH中,这样他们就可以正确运行后步骤,请参阅1.6 zip.exe约zip.exe一些细节
后编译的步骤
当编译过程完成后,只需运行update30.bat脚本。这将确保所有的资源文件Code :: Blocks的用途是在正确的地方,并及时更新。
参考
- 论坛讨论: 回复:wxWidgets的3.0和Code :: Blocks的文件的问题?
- 从源代码在Windows上安装Code :: Blocks的
- 需要注意的是PCH被禁用Codeblocks_wx30.cbp,因为它会导致GCC建立的错误(在GCC 4.8.x的bug 问题56926 -崩溃(不ICE),而编译升压。数学 ),见这里的讨论:回复:wxWidgets的3.0和Code :: Blocks的文件的问题? 和修补程序使用MinGW的GCC 4.8.1编译Code :: Blocks的对wxWidgets的3.0
以上是关于在Code::Blocks中编译和使用wxWidgets3.0.0教程的主要内容,如果未能解决你的问题,请参考以下文章
如何使用带有 Code::Blocks 的 OpenCV 2.4.3 编译程序?
使用code::blocks编译windows的dll链接库
Code::Blocks C++ 使用 MacOS Mojave 编译:致命错误:sys/cdefs.h:没有这样的文件或目录