如何CodeBlocks+wxWidgets+MinGW+STLPort

原文链接:http://www.diybl.com/course/3_program/c++/cppjs/20090226/156182.html


最近在做CodeBlocks+wxWidgets+MinGW的开发,编译时提示wcout出错,在网上搜索了一个,发现这是MinGW的一个limitation:不支持unicode。网上提供的解决办法是用STLPort替代MinGW的STL库。按照网上提供的步骤,从SourceForge下载源代码,编译,出错。经过分析,发现网上很多文章都缺少了一些重要的步骤:安装MSYS。下面是我的编译过程:

1. 下载STLPort源代码:http://sourceforge.net/projects/stlport/。假定解压目录为C:\STLPort

2. 下载并安装CodeBlocks和MinGW或带MinGW的CodeBlocks,假定MinGW安装路径为C:\MinGW。不要忘记把C:\MinGW\bin加到Path环境变量里

3. 下载并安装MSYS:http://www.mingw.org/wiki/msys 并设置MinGW的安装路径(这篇文章讲得很清楚)

4. 打开MSYS Shell环境,cd到/c/STLPort/build/lib(在MSYS里,Windows的C:一般映射到/c),执行mingw32-make -fgcc.mak clean all install

5. mkdir C:\STLPort\lib

6. 复制C:\STLport\build\lib\obj\gcc下面3个文件夹里的*.a和*.all到C:\STLPort\lib。同时把3个dll复制到C:\Windows\system32

7. 下面是配置CodeBlocks的步骤:

(1)打开CodeBlocks菜单Settings->Compiler and Debugger->Global Compiler Setting->GCC

(2)检查并更新Toolchain executables中的MinGW安装路径(如果你用的不是CodeBlocks自带的MinGW)

(3)在Compiler setting->Other options中添加-mthreads

(4)在Linker setting中把C:\STLPort\lib里的3个*.a文件加入link libraries里,注意去年文件名前面的“lib”和后面的“.a”

(5)在Search directories->Linker里加入C:\STLPort\lib (有的文章说要在Search directories->Compiler里加入C:\STLPort\stlport,但是我在编辑wxWidgets程序时提示一些Windows头文件重复定义,去掉C:\STLPort\stlport后编译通过。哪位高人有更好的解决办法,请指教)

 

好了,一切准备就绪,写一个wxWidgets程序或wcout程序试试看吧!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值