Code::Blocks 相关

文库上的使用教程


http://blog.csdn.net/JGood/article/details/5252119 使用手册


http://blog.csdn.net/liquanhai/article/details/6618300


一.Code::blocks 
Code::blocks集成开发环境是一个支持编译、链接、调试许多种语言的IDE,支持VS6.0到VS2003到VS2008,Borland C++等等。它支持语法彩色亮化,代码自动完成,代码折叠,代码格式化,快速注释等便捷功能,可以与VC++6.0相辅相成使用。Code::blocks缺少VC++6.0资源编辑器功能,以及编译链接速度不如VC++6.0快。
二.配置VC++6.0 通用IDE
版本:10.05,本文仅针对中文汉化版
其中VS2003-VS2008已经原生配置好,VC++6.0需自行配置。
配置步骤:
1.安装Code::Blocks 10.05版本,可以汉化。http://wiki.codeblocks.org/index.php?title=Installing_the_latest_official_version_of_Code::Blocks_on_Windows。
下载中文语言包http://download.csdn.net/source/3345510,在安装目录"...\CodeBlocks\share\CodeBlocks"下新建一个"locale"文件夹,再在此文件夹建立"zh_CN"文件夹,解压中文包的"codeblocks.mo"到此目录"...\CodeBlocks\share\CodeBlocks\locale\zh_CN"下。启动Code::Blocks,点击主菜单的“Settings”,选择“Enviornment”。出现的对话框中,左边选中“View”,右边打勾“Internationalization (needs restart)”,并在后面的复合框中选中“Chinese (Simplified)”。确认完成。重启Code::Blocks即可。
2.配置全局编译设置
全局编译设置可以设置为通用型的VC++6.0编译环境,这样以后不同的程序运行的全局环境都一样,而不同程序所需的不同的配置可以在导入具体工程后只针对自身设置。
菜单<设置>\<编译器和调试器>,在选项“选择的编译器”下选择<微软Visual C++ 工具集 2003>,点击“复制”按钮,填写新的名称“Microsoft Visual C++ 6.0”,点“OK”。
以下针对各个标签配置:
编译器设置:不变。
链接器设置:不变。
搜索路径:编译器
  链接器
  资源编译器:
可执行工具链:程序文件
附加路径
如果有windebug 6.7.005(要用到安装目录下的调试器cdb.exe),再多加一条,并在编译器设置中选择“产生调试符号”和“多线程DLL运行库”两项。调试器这一项要选择Debugging Tools for Windows下面的cdb.exe。
操,NMD,连个图片也不让发!!!!!!!!!!!!!!!!!!!!




codeblocks + vc 2010 express 编译器的配置方法

(2011-09-23 02:02:00)
标签:

杂谈

 

首先在编译器设置中设置为 vc 2010即可。

但是只安装vc2010的话,在vc的bin目录中无法找到rc.exe和cdb.exe。

rc.exe可以从C:\Program Files\MicrosoftSDKs\Windows\v7.0A\bin目录下找到。你也可以把rc.exe和rcdll.dll拷贝到vc的bin目录下。

cdb.exe无法找到,你必须下载 Debugging Tools forWindows。当然这个东西没有单独的包可下载,你可以下载MicrosoftWindows SDK for Windows 7 and .NETFramework。这个东西现在只需先下载一个500k的引导程序,然后其他的都不要,只要DebuggingTools for Windows就好了。

安装好的cdb.exe在C:\Program Files\Debugging Tools forWindows (x86)目录下,你需要在compiler and debuggersettings中的Toolchain executables选项的additionalpaths中增加这个目录以便codeblocks查找它。

ok,现在你可以用目前最棒的c++编辑器和最棒的c++编译器了:)

 

或许你在编译一个带资源文件的工程,而这个资源文件#include<windows.h>时,你又会遇到问题:致命错误RC1015: 无法打开包含文件'windows.h'。还是一样在compiler and debuggersettings中的searchdirectories设置中为编译、链接、资源编译三个选项加上下面这个查找目录:

C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include

 

Ok,祝你一切顺利!





codeblocks里面可以添加VC编译器吗?怎么添加?

2011-10-02 10:29 爱幂ing | 分类:VC++ | 浏览2296次
能不能让codeblocks编译的时候,用VC编译器编译,还有GCC编译器里面,main函数必须要有返回值吗,不能用void吗?
2011-10-02 11:52 提问者采纳
菜单[Settings] ->
菜单[compiler and debugger settings] ->
{Global compiler} ->
(Selected compiler) 里有Microsoft Visual C++ Toolkit 2003和Microsoft Visual C++ 2005/2008
可以设置一个为默认的

然后下面Toolchain executables标签里检查下编译器安装目录Copmiler's installation directory(或者Auto-detect) 

工程的选项也要改下Build options里的Selected compiler



windows下CodeBlocks用VC2008编译器 + OpenCV2.4.2的环境配置

2013年08月09日 ⁄ 综合⁄ 共 2279字 ⁄ 字号 小中大 ⁄评论关闭

初始配置: 已安装vs2008

1. 下载安装CodeBlocks 
from: http://www.codeblocks.org/downloads
第一次运行的时候会提示用户选择何种编译器,由于我已安装过vs2008,CodeBlocks显示detected,所以我选择了vs2005/2008.
这样就可以写一个helloworld测试是否ok了。个人在测试的时候出现的问题是尽管在“Build Option”中选的编译器是vs2005/2008,但是奇怪的是编译成功就是运行的时候没有反应。后来我的解决措施为:Setting->Compler and debugger setting->Seleted compiler中选择MS VC++2005/2008后然后点击Set as default后就好使了。。。

2. 配置OpenCV2.4.2
下载地址:http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.2/OpenCV-2.4.2.exe/download
安装后(我的安装目录为D:\Program Files\OpenCV2.4.2为例)添加环境变量”D:\Program Files\OpenCV2.4.2\build\x86\vc9\bin“到path。然后重启下保险点。新建一个project,右击工程进入Project build options:
1) 在Search directories->Compiler中加入 “D:\Program Files\OpenCV2.4.2\build\include”,“D:\Program Files\OpenCV2.4.2\build\include\opencv”
2) 在Search directories->Linker中加入 “D:\Program Files\OpenCV2.4.2\build\x86\vc9\lib“
3) 在linker settings->Link libraries中加入所需的lib库文件,个人由于嫌麻烦一股脑全加了:opencv_calib3d242d.lib opencv_contrib242d.lib opencv_core242d.lib opencv_features2d242d.lib opencv_flann242d.lib opencv_gpu242d.lib opencv_highgui242d.lib opencv_imgproc242d.lib opencv_legacy242d.lib
opencv_ml242d.lib opencv_objdetect242d.lib opencv_ts242d.lib opencv_video242d.lib

这样就把OpenCV配置结束了。为了测试下配置得是否争取,可用以下步骤测试:
1. 把以下代码复制到cpp文件中。

#include <iostream>


using namespace std;


#include "cv.h"
#include "highgui.h"


int main( int argc, char** argv )
{
IplImage* pImg; //声明IplImage指针


//载入图像
if( argc == 2 &&
(pImg = cvLoadImage( argv[1], 1)) != 0 )
{
cvNamedWindow( "Image", 1 );//创建窗口
cvShowImage( "Image", pImg );//显示图像


cvWaitKey(0); //等待按键


cvDestroyWindow( "Image" );//销毁窗口
cvReleaseImage( &pImg ); //释放图像
return 0;
}
return -1;
}

2. 然后需要手工copy一个图片到项目的目录,比如 lena.jpg。然后添加到程序的命令行参数 (Project->Set programms' arguments)
3. 然后编译运行后出来图片就是OK了。

补充说明1:
发现以上步骤的情况下debug模式下不能跟踪,原因是Debugger里没有cdb.exe文件。需从http://www.microsoft.com/en-us/download/details.aspx?id=8442下载安装debugger,个人安装目录在C:\Program Files (x86)\Debugging Tools for Windows (x86),再把这个目录添加到:Setting->Compiler and debugger settings->Toolchain executables->Additional
Paths中就可以debug了。
目前还存在的问题:debug倒是可以debug了,但是命令行里明明加进了参数,可是main里的argc还是显示1,不知道为什么。
以上总结来自于http://www.opencv.org.cn/index.php/Codeblocks_MinGW_openCV,只是他的帖子版本较老所以有改动。第一次发帖,帖子内的错误请指正。

补充说明2:
在设置中遇到一个问题:比如一个static lib的新建立的project是基于OpenCV的库文件,不过在main所在的project编译会出现link2005的错误。按理说应该都使用统一的CRT应该就可以了,不过在本机上未果。目前本机上可以编译成功的方法是在build options里面的Linker settings->Other linker options里添加/FORCE:MULTIPLE。







最近接了个关于C++的项目,需要跨平台性,所以转载了一篇配置相关BLOG,此帖子转载链接:

  http://henrya2.blog.163.com/blog/static/754514192008102342642940

  1.简介:

  Code::Blocks是一个跨平台的C++IDE,支持Windows、Linux、MacOSX。同时他还支持各种不同的编译器,如GNU/MinGW C/C++,VC++ 6.0/2003/2005/2008,Borland C++,Digital Mars等等各种不同的编译器。

  经过14个组员长达2年对Code::Blocks的全部重写,终于发布了正式版8.02,这个版本更包括了对构建基于wxWidgets的跨平台GUI程序的支持,堪比Visual C++。

  wxWidgets则是一个十分优秀的跨平台的GUI框架,用其编写的C++应用程序可以十分方便地迁移到不同的系统上去。

  Code::Blocks + wxWidgets两个同是支持跨平台的IDE和框架,使得跨平台的编程非常方便。然而Code::Blocks虽然包含了对wxWidgets的支持,但是却没有包含wxWidgets的构建环境,我们必须手动进行配置。另外,Code::Blocks有一个安装包包含了MinGW的编译器,如果使用别的编译器,同样也需要自己进行相应的配置。

  2.环境安装:

  编译器:

  你至少应该正确安装了免费的MinGW/GCC编译器或者是某种微软的编译器Express editions是免费的,但是你还需要安装Platform SDK)。如果是用MinGW/GCC,至少要准备gcc-core、gcc-g++、binutils、w32api以及mingw32-make包;同时,确保包含编译器可执行文件的目录(一般是C:/MinGW/bin)在Windows的PATH环境变量中。如果选择MinGW/GCC编译器,可以在直接选择包含MinGW的Code::Blocks安装包,见下一节。

  Code::Blocks

  请下载最新的8.02发布版。尚未选择编译器可以选择包含MinGW的安装包

  wxWidgets

  你可以选择下载wxWidgets的源代码然后自己进行构建,或者是直接安装预编译的wxPack。  

  wxWidgets源代码

  安装包较小,可以根据自己的需求进行自定义构建,但是需要花费长时间进行编译。如果不清楚编译选项,可能导致无法成功配置Code::Blocks。

  目前推荐的wxWidgets的版本是2.8.7。点击此处下载wxWidgets 2.8.7源代码Windows安装包 (wxMSW-2.8.7-Setup.exe; 12.0 MB)。你也可以检查一下wxWidgets的下载页面看看有没有更新的稳定版下载。强烈建议你将代码安装到不带空格的路径中。必须保证盘中至少有300MB的剩余空间。

wxPack

  虽然安装包达200MB,全部安装需要3G,但是包含了预编译的所有可能用到的库文件,而且包含VC和GCC的两种版本,可以不用去考虑构建选项了。

  当前wxPack的稳定发布版是 v2.8.7.03,基于 wxWidgets 2.8.7。点击此处下载 wxPack v2.8.7.03 (wxPack_v2.8.7.03.exe, 236.9 MB)。你也可以查看wxPack下载页面看看有没有更新的稳定版下载。强烈建议将wxPack安装到没有空格的路径中。如果你选择只MSVC版本,应保证至少有700MB的剩余空间;如果只选择MinGW/GCC版本,则应保证至少有2.2GB的剩余空间。

  注意:如果磁盘使用了NTFS格式,可以开启文件压缩功能,上述的目录在压缩后可以减少50%的空间占用。

  编译wxWidgets

  使用wxPack则可以跳过这一步。

  打开命令行(在开始菜单中点击“运行”,输入cmd并回车)。如果使用的MSVC,你可以使用特定的用于设置环境变量的命令行。如果你使用的 MSVC版本还要求你单独下载Platform SDK,确保全部包含了标准编译工具和Platform SDK中要用到的环境变量。

  转到wxWidgets的构建目录,其中<wxWidgets>是源码所在路径,通常是C:/wxWidgets-2.8.7

  cd <wxWidgets>/build/msw

  执行构建命令,MinGW/GCC推荐的命令是:

  mingw32-make -f makefile.gcc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1

  MSVC推荐的构建命令是:

  nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1

  这个过程需要花很久,快的机器大概30分钟可以完成,慢的可能就需要几个小时了。

  如果使用的GCC的版本较新,构建过程中可能会出现大量的警告。这样会明显导致构建过程变慢;你可以将错误信息重定向到文件中,在上述命令后面添加2> err.log,也可以通过2>nul直接禁止警告信息。

  其中关于BUILD、SHARED、MONOLITHIC以及UNICODE选项的解释,请仔细参考文章后面关于wxWidgets的构建参数的解释,这些参数十分关键,他们直接定义了你所使用的基本的wxWidgets开发环境。你必须严格按照你的编译参数设置Code::Blocks的配置向导。

  3.在Code::Blocks中创建wxWidgets项目:

  在Code::Blocks的起始页面中,选择“Create a new project”,也可以在File菜单中,选择“New” -> “Project…”。

  找到并选择“wxWidgets project”,并创建,接下来会出现一个向导帮助进行wxWidgets项目的配置:

  1>第一个页面是简介,可以选择以后跳过。

  2>选择你要使用的wxWidgets版本。如果你是按照本文的过程配置的,那么你应该选择“wxWidgets 2.8.x”。

  3>设置你的项目的名字的位置。

  4>输入作者的信息(非必要)

  5>选择自动代码和文件生成的选项。

  6>选择wxWidgets的位置。强烈建议在此使用全局变量:输入“$(#wx)”(不包含引号)。如果你还没定义这个全局变量,那么全局变量对话框会出现,在Base Path中,选择你的wxWidgets安装路径。其他路径可以不用填。

  7>为你的项目选择debug/release配置。推荐至少选择debug配置。

  8>选择你的wxWidgets构建选项。必须和你构建wxWidgets时所使用的选项一致!如果你按照本文之前的方式构建的,应该将 “wxWidgets Library Settings”下的全部三个选项选中。如果用的是wxPack,由于wxPack包含了各种不同的版本,所以你只需要选择你需要的选项。这个页面的另一个设置和wxWidgets的构建选项没有关系,你可以按照喜好来选择。如果,出于某种原因,你想使用调试版本的wxWidgets构建,选择 “Configure Advanced options”然后在下一页选择“Use __WXDEBUG__ and Debug wxWidgets lib”。

  9>如果需要,选择额外的库。一般应用的话应该无须选择其中任何一个。

  接下来,就可以选择“Build and run”(F9)对程序进行构建并运行了。如果顺利,你的wxWidgets应用程序就会出现。如果出现了什么问题,你可以参考后面的常见问题。

  4.wxWidgets编译选项简介:

  BUILD

BUILD 控制wxWidgets构建调试版本(BUILD=debug)或者是发布版本(BUILD=release)。绝大多数情况下你只需要 wxWidgets的发布版本就可以了,因为你应该不想要去调试wxWidgets自身,同时你依然可以通过链接wxWidgets的发布版本来构建你自己的程序的调试版本。

  • 调试构建wxWidgets会创建带有”d”后缀的库,例如”libwxmsw28d.a”、”wxmsw28d_gcc_custom.dll”。
  • 调试构建wxWidgets会在wxWidgets库的输出目录中创建”mswd” 或者 “mswud” 目录。
  • 发布构建wxWidgets创建的库没有”d”后缀,例如”libwxmsw28.a”、”wxmsw28_gcc_custom.dll”。
  • 发布构建wxWidgets会在wxWidgets库的输出目录中创建”msw” 或者 “mswu” 目录。

  SHARED

  SHARED控制wxWidgets是构建DLL(SHARED=1)还是静态库(SHARED=0)。利用构建的DLL,主程序构建时间较快,可执行文件更小。但是可执行文件加上wxWidgets DLL的总大小更大,但是不同的可执行文件可以使用同一个DLL。

  • wxWidgetsDLL构建会创建导入库(如 libwxmsw28.a)以及DLL文件(如wxmsw28_gcc_custom.dll)。你必须在发布你的程序的时候包含这个DLL。
  • wxWidgets静态构建只会创建静态库(如 libwxmsw28.a),发布的时候也无须包含wxWidgets的DLL。

  MONOLITHIC

  MONOLITHIC 控制是构建一个单一的库(MONOLITHIC=1)还是多个组件库(MONOLITHIC=0)。使用单一构建,项目的设置和开发会更加简单,如果你同时使用DLL构建的话,你只需要分发一个DLL文件。如果使用非单一构建(multilib),会构建出多个不同的库同时你可以避免将整个wxWidgets的基本代码链接到主程序,就可以去掉不需要的库。同时你也必须确保你选择了正确的组件库。

  • wxWidgets单一构建仅会创建一个wxWidgets导入库(如libwxmsw28.a)以及一个DLL(如wxmsw28_gcc_custom.dll)。
  • wxWidgets多库(multilib)构建会创建多个导入库(libwx28_base.a等)以及多个DLL文件。
  • 无论何种wxWidgets构建,都会创建额外的静态库(如libwxexpat.a、libwxjpeg.a等)。这些库对于wxWidgets的DLL构建一般是不需要的,但是当使用静态构建的时候,则是必须的。

  UNICODE

  UNICODE控制wxWidgets以及你的程序是否使用支持Unicode的宽字符串。大多数Windows 2000或更高系统上的应用程序都应该支持Unicode。早期的Windows版本不一定有Unicode支持。你应该总是使用wxWidgets的_("string")_T("string")宏来确保硬编码的字符串编译时是正确的类型。

  • wxWidgetsUnicodeUNICODE=1)构建将会创建带有"u”后缀的库,例如”libwxmsw28u.a”、"wxmsw28u_gcc_custom.dll”。
  • wxWidgetsUnicode构建会在wxWidgets库的输出目录中创建"mswu”或"mswud”目录。
  • wxWidgetsANSIUNICODE=0)构建创建的库没有"u”后缀,例如”libwxmsw28.a”、”wxmsw28_gcc_custom.dll”。
  • wxWidgetsANSI构建会在wxWidgets库的输出目录中创建”msw”或”mswd”目录。

  5.常见问题:

  出现类似于"wx/setup.h: No such file or directory”的错误

  你在构建选项中缺少了很重要的编译器搜索路径。首先确认你是否在运行wxWidgets项目向导的时候正确选择了wxWidgets的构建配置。如果重新运行向导并配置依然无效,那么打开你的项目的构建选项并给编译起的搜索路径中添加"$(#wx.lib)/gcc_dll/mswu“(这里假设是一个单一的Unicode DLL构建)。

  出现类似于"cannot find -lwxmsw28u”的错误

  构建选项中的链接库错了。首先确认你是否在运行wxWidgets项目向导的时候正确选择了wxWidgets的构建配置。如果重新运行向导并配置依然无效,确定你构建了什么库,并相应在构建选项中调整库的名字。

  6.小结:

  我已经在自己的机器上编译通过,感谢该贴来源作者提供该资料,在此致敬:

   http://henrya2.blog.163.com/blog/static/754514192008102342642940

codeblocks+wxWidgets项目可以编译,却无法运行。跪求大神

http://tieba.baidu.com/p/2405771953



本文部分内容转自网络(原文链接:http://shiningray.cn/windows-shang-pei-zhi-codeblocks-wxwidgets.html),并在原文的基础上简化叙述,扩充内容以适应当前软件版本,并记录了我在操作过程中的疑惑和解答,以帮助更多像我这样的菜鸟~

 

请先浏览本文,了解操作脉络后再进行实践.

 

本文涉及的工具介绍

MinGW32

一套遵循GNU规则的编译器和debuger工具集,免费开源,用于替代微软的VC++系列编译器和调试器.

Code::Blocks:

一个跨平台的C++IDE,支持Windows、Linux、MacOSX。同时还支持各种不同的编译器,如GNU/MinGW C/C++,VC++6.0/2003/2005/2008,Borland C++,Digital Mars等等各种不同的编译器。

 

最近版本为10.05,

官网:http://www.codeblocks.org/,

官网下载页http://www.codeblocks.org/downloads/26,(请下载codeblocks-10.05mingw-setup.exe版本,)

我上传了一个配置完成可以直接使用的mod,分成3个part:

http://download.csdn.net/source/2725048

http://download.csdn.net/source/2725067

http://download.csdn.net/source/2725128

wxWidgets:

是一个十分优秀的跨平台的GUI框架,用其编写的C++应用程序可以十分方便地迁移到不同的系统上去。

配置code::blocks(若您下载我提供的mod可以跳过这一步)

最新版的Code::Blocks

请下载最新的10.05。

wxWidgets

你可以选择下载wxWidgets的源代码然后自己进行构建,或者是直接安装预编译的wxPack。

wxWidgets源代码

如上述,有两种选择:

安装包较小,可以根据自己的需求进行自定义构建,但是需要花费长时间进行编译。如果不清楚编译选项,可能导致无法成功配置Code::Blocks。

目前推荐的wxWidgets的版本是2.8.7。点击此处下载wxWidgets 2.8.7源代码Windows安装包 (wxMSW-2.8.7-Setup.exe; 12.0 MB)。你也可以检查一下wxWidgets的下载页面看看有没有更新的稳定版下载。强烈建议你将代码安装到不带空格的路径中。必须保证盘中至少有300MB的剩余空间。

wxPack

虽然安装包达200MB,全部安装需要3G,但是包含了预编译的所有可能用到的库文件,而且包含VC和GCC的两种版本,可以不用去考虑构建选项了。

当前wxPack的稳定发布版是 v2.8.7.03,基于 wxWidgets 2.8.7。点击此处下载 wxPack v2.8.7.03 (wxPack_v2.8.7.03.exe, 236.9 MB)。你也可以查看wxPack下载页面看看有没有更新的稳定版下载。强烈建议将wxPack安装到没有空格的路径中。如果你选择只MSVC版本,应保证至少有700MB的剩余空间;如果只选择MinGW/GCC版本,则应保证至少有2.2GB的剩余空间。

提示

如果磁盘使用了NTFS格式,可以开启文件压缩功能,上述的目录在压缩后可以减少50%的空间占用。

编译wxWidgets

使用wxPack则可以跳过这一步。


转到wxWidgets的构建目录下,其中<wxWidgets>是源码所在路径,默认是C:/wxWidgets-2.8.7

cd <wxWidgets>/build/msw

执行构建命令,

MinGW/GCC推荐的命令是:

mingw32-make -f makefile.gcc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1

MSVC推荐的构建命令是:

nmake -f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1 UNICODE=1

这个过程需要花很久,快的机器大概30分钟可以完成,慢的可能就需要几个小时了。

如果使用的GCC的版本较新,构建过程中可能会出现大量的警告。这样会明显导致构建过程变慢;你可以将错误信息重定向到文件中,在上述命令后面添加2> err.log,也可以通过2>nul直接禁止警告信息。

其中关于BUILD、SHARED、MONOLITHIC以及UNICODE选项的解释,请仔细参考文章后面关于wxWidgets的构建参数的解释,这些参数十分关键,他们直接定义了你所使用的基本的wxWidgets开发环境。你必须严格按照你的编译参数设置Code::Blocks的配置向导。

在Code::Blocks中创建wxWidgets项目

在Code::Blocks的起始页面中,选择“Create a new project”,也可以在File菜单中,选择“New” -> “Project…”。

找到并选择“wxWidgets project”,并创建,接下来会出现一个向导帮助进行wxWidgets项目的配置:

  1. 第一个页面是简介,可以选择以后跳过。
  2. 选择你要使用的wxWidgets版本。如果你是按照本文的过程配置的,那么你应该选择“wxWidgets 2.8.x”。
  3. 设置你的项目的名字的位置。
  4. 输入作者的信息(非必要)
  5. 选择自动代码和文件生成的选项。
  6. 选择wxWidgets的位置。强烈建议在此使用全局变量:输入“$(#wx)”(不包含引号)。如果你还没定义这个全局变量,那么全局变量对话框会出现,在Base Path中,选择你的wxWidgets安装路径。其他路径可以不用填。
  7. 为你的项目选择debug/release配置。推荐至少选择debug配置。
  8. 选择你的wxWidgets构建选项。必须和你构建wxWidgets时所使用的选项一致!如果你按照本文之前的方式构建的,应该将“wxWidgets Library Settings”下的全部三个选项选中。如果用的是wxPack,由于wxPack包含了各种不同的版本,所以你只需要选择你需要的选项。这个页面的另一个设置和wxWidgets的构建选项没有关系,你可以按照喜好来选择。如果,出于某种原因,你想使用调试版本的wxWidgets构建,选择“Configure Advanced options”然后在下一页选择“Use __WXDEBUG__ and Debug wxWidgets lib”。
  9. 如果需要,选择额外的库。一般应用的话应该无须选择其中任何一个。

构建并运行程序

接下来,就可以选择“Build and run”(F9)对程序进行构建并运行了。如果顺利,你的wxWidgets应用程序就会出现。如果出现了什么问题,你可以参考后面的常见问题。

 

可视化的界面编辑

在code::blocks中可以使用wxSmith或wxFormBuilder对界面进行编辑.在我提供的code::blocks中已经集成了wxSmith,在wxWidget建立向导的相应步骤中进行选择就好.当工程建立好,在文件树里打开Others -> wxSmith -> xxxx.wxs, code::blocks就会自动用wxSmith打开进行编辑.

 

至于wxFormBuilder,他不像wxSmith一样,而是作为一个程序独立运行的,感觉不如wxSmith方便.但也在这提供配置方法:

在wxWidget的建立向导中相应步骤选择wxFormBuilder,其余步骤照常.在建立好的工程后,去Settings -> Environment -> Files extension handling,在Registered wildcards下面选择*.fbp,如果没有话就通过New创建一个,选中后在右边选择Launch an external program, 路径选择你的wxFormBuilder.exe的路径.点击ok配置完成.

现在文件树下找到Others -> wxSmith -> xxxx.fbp,双击它,code::blocks会自动打开wxFormBuilder.exe来进行编辑.如果想熟练使用还需要了解一些wxWidget的原理,与javax.swing控件很像,在这就不多解释了,如有需要烦请自行Google~

wxWidgets编译选项简介

BUILD

BUILD控制wxWidgets构建调试版本(BUILD=debug)或者是发布版本(BUILD=release)。绝大多数情况下你只需要wxWidgets的发布版本就可以了,因为你应该不想要去调试wxWidgets自身,同时你依然可以通过链接wxWidgets的发布版本来构建你自己的程序的调试版本。

  • 调试构建wxWidgets会创建带有”d”后缀的库,例如”libwxmsw28d.a”、”wxmsw28d_gcc_custom.dll”。
  • 调试构建wxWidgets会在wxWidgets库的输出目录中创建”mswd” 或者 “mswud” 目录。
  • 发布构建wxWidgets创建的库没有”d”后缀,例如”libwxmsw28.a”、”wxmsw28_gcc_custom.dll”。
  • 发布构建wxWidgets会在wxWidgets库的输出目录中创建”msw” 或者 “mswu” 目录。

SHARED

SHARED控制wxWidgets是构建DLL(SHARED=1)还是静态库(SHARED=0)。利用构建的DLL,主程序构建时间较快,可执行文件更小。但是可执行文件加上wxWidgets DLL的总大小更大,但是不同的可执行文件可以使用同一个DLL。

  • wxWidgets的DLL构建会创建导入库(如 libwxmsw28.a)以及DLL文件(如wxmsw28_gcc_custom.dll)。你必须在发布你的程序的时候包含这个DLL。
  • wxWidgets的静态构建只会创建静态库(如 libwxmsw28.a),发布的时候也无须包含wxWidgets的DLL。

MONOLITHIC

MONOLITHIC控制是构建一个单一的库(MONOLITHIC=1)还是多个组件库(MONOLITHIC=0)。使用单一构建,项目的设置和开发会更加简单,如果你同时使用DLL构建的话,你只需要分发一个DLL文件。如果使用非单一构建(multilib),会构建出多个不同的库同时你可以避免将整个wxWidgets的基本代码链接到主程序,就可以去掉不需要的库。同时你也必须确保你选择了正确的组件库。

  • wxWidgets的单一构建仅会创建一个wxWidgets导入库(如libwxmsw28.a)以及一个DLL(如wxmsw28_gcc_custom.dll)。
  • wxWidgets的多库(multilib)构建会创建多个导入库(libwx28_base.a等)以及多个DLL文件。
  • 无论何种wxWidgets构建,都会创建额外的静态库(如libwxexpat.a、libwxjpeg.a等)。这些库对于wxWidgets的DLL构建一般是不需要的,但是当使用静态构建的时候,则是必须的。

UNICODE

UNICODE控制wxWidgets以及你的程序是否使用支持Unicode的宽字符串。大多数Windows 2000或更高系统上的应用程序都应该支持Unicode。早期的Windows版本不一定有Unicode支持。你应该总是使用wxWidgets的_("string")_T("string")宏来确保硬编码的字符串编译时是正确的类型。

  • wxWidgets的Unicode(UNICODE=1)构建将会创建带有”u”后缀的库,例如”libwxmsw28u.a”、”wxmsw28u_gcc_custom.dll”。
  • wxWidgets的Unicode构建会在wxWidgets库的输出目录中创建”mswu”或”mswud”目录。
  • wxWidgets的ANSI(UNICODE=0)构建创建的库没有”u”后缀,例如”libwxmsw28.a”、”wxmsw28_gcc_custom.dll”。
  • wxWidgets的ANSI构建会在wxWidgets库的输出目录中创建”msw”或”mswd”目录。

常见问题

出现类似于”wx/setup.h: No such file or directory”的错误

你在构建选项中缺少了很重要的编译器搜索路径。首先确认你是否在运行wxWidgets项目向导的时候正确选择了wxWidgets的构建配置。如果重新运行向导并配置依然无效,那么打开你的项目的构建选项并给编译起的搜索路径中添加”$(#wx.lib)/gcc_dll/mswu“(这里假设是一个单一的Unicode DLL构建)。

出现类似于”cannot find -lwxmsw28u”的错误

构建选项中的链接库错了。首先确认你是否在运行wxWidgets项目向导的时候正确选择了wxWidgets的构建配置。如果重新运行向导并配置依然无效,确定你构建了什么库,并相应在构建选项中调整库的名字。






Windowscodeblocks+wxWidgets的安装配置

作者:北方七宿提交日期:2010-7-2615:20:00正常 |分类:未分类|访问量:9852


  codeblocks+wxWidgets这一对开源组合真是够强大,codeblocks支持的项目类型多的惊人,wxWidgets又为codeblocks加上了相当强劲的可视化程序开发功能,可以说用这对组合来开发程序丝毫不比在VS中用C#困难,而且由于codeblockswxWidgets都是开源软件,在windowslinux下都有相应的版本,移植程序就成为一件相当轻松的事情。

  

  以下内容转载自http://shiningray.cn/windows-shang-pei-zhi-codeblocks-wxwidgets.html,内容有所改动,原文图片没有附上,有需要的去上面的地址查看

  

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  

  前提准备

  编译器

  你至少应该正确安装了免费的MinGW/GCC编译器或者是某种微软的编译器(Expresseditions是免费的,但是你还需要安装PlatformSDK)。如果是用MinGW/GCC,至少要准备gcc-coregcc-g++binutilsw32api以及mingw32-make包;同时,确保包含编译器可执行文件的目录(一般是C:\MinGW\bin)在WindowsPATH环境变量中。

  提示:设置完环境变量之后需要重启计算机才能生效。

  

  如果选择MinGW/GCC编译器,可以在直接选择包含MinGWCode::Blocks安装包,见下一节。

  

  最新版的Code::Blocks

  请下载最新的8.02发布版。尚未选择编译器可以选择包含MinGW的安装包。(现在已经有10.05版本了,而且可以用8.02版本的汉化包,汉化方法去google一下吧,到处都有)

  

  wxWidgets

  你可以选择下载wxWidgets的源代码然后自己进行构建,或者是直接安装预编译的wxPack

  

  wxWidgets源代码

  安装包较小,可以根据自己的需求进行自定义构建,但是需要花费长时间进行编译。如果不清楚编译选项,可能导致无法成功配置Code::Blocks

  

  目前推荐的wxWidgets的版本是2.8.11。你也可以检查一下wxWidgets的下载页面看看有没有更新的稳定版下载。强烈建议你将代码安装到不带空格的路径中。必须保证盘中至少有300MB的剩余空间。

  

  wxPack

  

  虽然安装包达200MB,全部安装需要3G,但是包含了预编译的所有可能用到的库文件,而且包含VCGCC的两种版本,可以不用去考虑构建选项了。

  

  当前wxPack的稳定发布版是v2.8.7.03,基于wxWidgets2.8.7。点击此处下载wxPackv2.8.7.03 (wxPack_v2.8.7.03.exe, 236.9MB)。你也可以查看wxPack下载页面看看有没有更新的稳定版下载。强烈建议将wxPack安装到没有空格的路径中。如果你选择只MSVC版本,应保证至少有700MB的剩余空间;如果只选择MinGW/GCC版本,则应保证至少有2.2GB的剩余空间。

  

  提示

  如果磁盘使用了NTFS格式,可以开启文件压缩功能,上述的目录在压缩后可以减少50%的空间占用。

  

  编译wxWidgets

  使用wxPack则可以跳过这一步。

  

  打开命令行(在开始菜单中点击“运行”,输入cmd并回车)。如果使用的MSVC,你可以使用特定的用于设置环境变量的命令行。如果你使用的MSVC版本还要求你单独下载PlatformSDK,确保全部包含了标准编译工具和PlatformSDK中要用到的环境变量。

  

  转到wxWidgets的构建目录,其中是源码所在路径,通常是C:\wxWidgets-2.8.7

  

  cd\build\msw执行构建命令,MinGW/GCC推荐的命令是:

  

  mingw32-make-f makefile.gcc BUILD=release SHARED=1 MONOLITHIC=1UNICODE=1MSVC推荐的构建命令是:

  

  nmake-f makefile.vc BUILD=release SHARED=1 MONOLITHIC=1UNICODE=1这个过程需要花很久,快的机器大概30分钟可以完成,慢的可能就需要几个小时了。

  

  如果使用的GCC的版本较新,构建过程中可能会出现大量的警告。这样会明显导致构建过程变慢;你可以将错误信息重定向到文件中,在上述命令后面添加2>err.log,也可以通过2>nul直接禁止警告信息。

  

  其中关于BUILDSHAREDMONOLITHIC以及UNICODE选项的解释,请仔细参考文章后面关于wxWidgets的构建参数的解释,这些参数十分关键,他们直接定义了你所使用的基本的wxWidgets开发环境。你必须严格按照你的编译参数设置Code::Blocks的配置向导。

  

  在Code::Blocks中创建wxWidgets项目

  在Code::Blocks的起始页面中,选择“Createa new project”,也可以在File菜单中,选择“New”-> “Project…”

  

  找到并选择“wxWidgetsproject”,并创建,接下来会出现一个向导帮助进行wxWidgets项目的配置:

  

  第一个页面是简介,可以选择以后跳过。

  选择你要使用的wxWidgets版本。如果你是按照本文的过程配置的,那么你应该选择“wxWidgets2.8.x”

  设置你的项目的名字的位置。

  输入作者的信息(非必要)

  选择自动代码和文件生成的选项。

  选择wxWidgets的位置。强烈建议在此使用全局变量:输入“$(#wx)”(不包含引号)。如果你还没定义这个全局变量,那么全局变量对话框会出现,在BasePath中,选择你的wxWidgets安装路径。其他路径可以不用填。

  为你的项目选择debug/release配置。推荐至少选择debug配置。

  选择你的wxWidgets构建选项。必须和你构建wxWidgets时所使用的选项一致!如果你按照本文之前的方式构建的,应该将“wxWidgetsLibrarySettings”下的全部三个选项选中。如果用的是wxPack,由于wxPack包含了各种不同的版本,所以你只需要选择你需要的选项。这个页面的另一个设置和wxWidgets的构建选项没有关系,你可以按照喜好来选择。如果,出于某种原因,你想使用调试版本的wxWidgets构建,选择“ConfigureAdvanced options”然后在下一页选择“Use__WXDEBUG__ and Debug wxWidgets lib”

  如果需要,选择额外的库。一般应用的话应该无须选择其中任何一个。

  构建并运行程序

  接下来,就可以选择“Buildandrun”F9)对程序进行构建并运行了。如果顺利,你的wxWidgets应用程序就会出现。如果出现了什么问题,你可以参考后面的常见问题。

  

  wxWidgets编译选项简介

  BUILD

  BUILD控制wxWidgets构建调试版本(BUILD=debug)或者是发布版本(BUILD=release)。绝大多数情况下你只需要wxWidgets的发布版本就可以了,因为你应该不想要去调试wxWidgets自身,同时你依然可以通过链接wxWidgets的发布版本来构建你自己的程序的调试版本。

  

  调试构建wxWidgets会创建带有”d”后缀的库,例如”libwxmsw28d.a”、”wxmsw28d_gcc_custom.dll”

  调试构建wxWidgets会在wxWidgets库的输出目录中创建”mswd”或者 “mswud”目录。

  发布构建wxWidgets创建的库没有”d”后缀,例如”libwxmsw28.a”、”wxmsw28_gcc_custom.dll”

  发布构建wxWidgets会在wxWidgets库的输出目录中创建”msw”或者 “mswu”目录。

  SHARED

  SHARED控制wxWidgets是构建DLLSHARED=1)还是静态库(SHARED=0)。利用构建的DLL,主程序构建时间较快,可执行文件更小。但是可执行文件加上wxWidgetsDLL的总大小更大,但是不同的可执行文件可以使用同一个DLL

  

  wxWidgetsDLL构建会创建导入库(如libwxmsw28.a)以及DLL文件(如wxmsw28_gcc_custom.dll)。你必须在发布你的程序的时候包含这个DLL

  wxWidgets的静态构建只会创建静态库(如libwxmsw28.a),发布的时候也无须包含wxWidgetsDLL

  MONOLITHIC

  MONOLITHIC控制是构建一个单一的库(MONOLITHIC=1)还是多个组件库(MONOLITHIC=0)。使用单一构建,项目的设置和开发会更加简单,如果你同时使用DLL构建的话,你只需要分发一个DLL文件。如果使用非单一构建(multilib),会构建出多个不同的库同时你可以避免将整个wxWidgets的基本代码链接到主程序,就可以去掉不需要的库。同时你也必须确保你选择了正确的组件库。

  

  wxWidgets的单一构建仅会创建一个wxWidgets导入库(如libwxmsw28.a)以及一个DLL(如wxmsw28_gcc_custom.dll)。

  wxWidgets的多库(multilib)构建会创建多个导入库(libwx28_base.a等)以及多个DLL文件。

  无论何种wxWidgets构建,都会创建额外的静态库(如libwxexpat.alibwxjpeg.a等)。这些库对于wxWidgetsDLL构建一般是不需要的,但是当使用静态构建的时候,则是必须的。

  UNICODE

  UNICODE控制wxWidgets以及你的程序是否使用支持Unicode的宽字符串。大多数Windows2000或更高系统上的应用程序都应该支持Unicode。早期的Windows版本不一定有Unicode支持。你应该总是使用wxWidgets_("string")_T("string")宏来确保硬编码的字符串编译时是正确的类型。

  

  wxWidgetsUnicodeUNICODE=1)构建将会创建带有”u”后缀的库,例如”libwxmsw28u.a”、”wxmsw28u_gcc_custom.dll”

  wxWidgetsUnicode构建会在wxWidgets库的输出目录中创建”mswu”或”mswud”目录。

  wxWidgetsANSIUNICODE=0)构建创建的库没有”u”后缀,例如”libwxmsw28.a”、”wxmsw28_gcc_custom.dll”

  wxWidgetsANSI构建会在wxWidgets库的输出目录中创建”msw”或”mswd”目录。

  常见问题

  出现类似于”wx/setup.h:No such file or directory”的错误

  你在构建选项中缺少了很重要的编译器搜索路径。首先确认你是否在运行wxWidgets项目向导的时候正确选择了wxWidgets的构建配置。如果重新运行向导并配置依然无效,那么打开你的项目的构建选项并给编译起的搜索路径中添加”$(#wx.lib)\gcc_dll\mswu“(这里假设是一个单一的UnicodeDLL构建)。

  

  出现类似于”cannotfind -lwxmsw28u”的错误

  构建选项中的链接库错了。首先确认你是否在运行wxWidgets项目向导的时候正确选择了wxWidgets的构建配置。如果重新运行向导并配置依然无效,确定你构建了什么库,并相应在构建选项中调整库的名字。

  

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  若要构建的程序能够显示中文,要对codeblocks进行一下设置,在edit(编辑)菜单里面的文件编码选择UTF-8,否则编译报错。

  



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值