企业建一个网站需要多少钱,上海网站建设 网站制作,旅游网站首页设计大概图,网站托管怎做背景 - 现在是2023年
1. 很多年前#xff0c;下载使用CodeBlocks就发现里面有自带的wxWidgets Project的项目#xff0c;然而一路Next下去出来的程序根本就不能运行#xff0c;心有不甘#xff1b;
2. 前几年#xff0c;用python做小工具的时候#xff0c;界面用的wxPy…背景 - 现在是2023年
1. 很多年前下载使用CodeBlocks就发现里面有自带的wxWidgets Project的项目然而一路Next下去出来的程序根本就不能运行心有不甘
2. 前几年用python做小工具的时候界面用的wxPython也花了挺多的时间学习wxPython
3. 去年由于心中执念又尝试在CodeBolcks中配置wxWidgets以往的文章或教程都建议自己去编译但在编译的过程中障碍重重无法顺利前进残念...
4. 执念更甚3月时花了一些时间查了不少资料才发现还有一条不需要自己编译的路但仍然遇到不少的阻碍最后堪堪能够在CodeBlocks 13上运行wxWidgets3.0.5的模板程序。然而5分钟后CodeBlocks 20就再次跳出一堆堆的Error再次残念...
5. 放下一段时间再回来这一次终于弄得清楚明白。 主要参考资料
名称说明windows下的wxWidgets环境配置这个是有效的下载预编译好的dll的操作对应Codeblocks 13 也是自己实现的主要参考使用CodeBlocks搭建wxWidgets C GUI图形化开发环境这是CB 20.03在linux下的配置 wx 3.1.7 2022-10比较新但linux编译wx的操作无法直接在Win11上使用wxWidgets 在 Windows 下开发环境配置本文基于 CodeBlocks (16.01) 和 wxWidgets (3.0.2) 搭建 使用的是自己下载源码包新建bat进行编译 并列出几个编译遇到的问题 环境
win11 x64, CodeBlocks 20.03, wxWidgets 3.0.5 步骤
1.下载安装CodeBlocks
官网Code::Blocks - Code::BlocksThe IDE with all the features you need, having a consistent look, feel and operation across platforms.http://www.codeblocks.org下载安装文件直接安装即可CodeBlocks跨平台基于wxWidgets小而快
2.下载已经预编译好的wx
新人上手建议使用已经编译好的DLL已编译好的库涵盖的lib更多参考某些网友说的如果自己编译release和debug两个版本编译得一个多小时 而且编译出来的lib还不全而对于我自来说压根就没有编译通过
另外自己编译还涉及到make的用法这个虽然在linux C课程上的确是学习过但太久没有操作早就没什么概念了跟着别人的不全的文章进行操作走着走着就发现走不通了这样就增加了入门的门槛毕竟我们现在只是配置工具的事
官网Downloads - wxWidgetshttps://www.wxwidgets.org/downloads/页面上注意自己不编译则不需要下载上面的Source Code直接点Binaries去下载就可以了。这里没敢下最新的于是选择的是旧的Stable的版本3.0.5 。
从这里也可以看到wxWidget的与时俱进最下面的2.8的版本可是没有给windows的Binaries的。
点击后会弹出对应不同编译器选择Codeblocks 20默认配置的MinGW-8.1,里面必须下载3个文件分别是头文件 Header Files开发文件 Development Files和库文件Release DLLs。 下载后解压这里就出现2个文件夹分别include和lib 把它们可以放到Codeblocks文件夹后面就开始Codeblocks的配置了。 3.CodeBlocks配置
3.1 全局变量 Global variable Editor
由菜单Settings-Global Variable Editor 全局变量就是告诉CodeBlocks你的wxWidget目录在哪并且include目录和lib的目录在什么位置设置对了CodeBlocks就能找得到程序才能运行。
注意
电脑上可能有几个版本的CodeBlocks但配置文件好像是共用的如果要在不同的版本下需要添加新的 SET也可能有不同的编译器比如老一点版本的GCC 492VC 8.0的VC 12.0 等等所以还要新建或Clone Varible 3.2 编译器 Compiler的配置
当电脑上只有一版CodeBlocks且GCC的编译器只有一版并且已经正常编译运行C程序的基础上对于wxWidgets的配置内容是很简单的只需要把 Settings-Compiler-Linker Settings添加lib目录下所有.a文件就可以了。 4. CodeBlocks新建项目
在前面几项都OK的基础上就可以新建项目了。在这个过程中需要有一些注意事项
新建 wxWidgets ProjectWelcome页可以跳过选择wxWidgets版本这一步当然是根据你前面下载的wxWidgets是什么版本就必须对应这个版本Codeblocks 13里只支持到3.0.x 20则支持到3.1.x 。所以如果Codeblocks版本比较旧的情况下wxWidgets也不要下最新的Project title 随意path也没有特别要注意的作者信息页可以不填GUI Builder 选择wxSmith这是CodeBlocks已经集成好了的至于Dialog还是Frame需要根据自己的需求来定我们先用Frame然后到了select the location of wxWidgets如果电脑上只有一版且一个编译器版本的wxWidgets那么可以像其他作者写的 wxWidgets location 设置为 $(#wx)但一旦电脑上有2个wxWidgets的文件夹例如这里有wx3.0.5 for GCC8.1和wx3.0.5 for GCC4.92)那就需要选择对应的文件夹了选择编译器同上如果只有一个默认的GCC直接Next否则要选择对应的那一个在select various configuration中建议是只勾1和3即Use wxWidgets DLL和Enable unicode下一页select additional libraries附加库可不选也可以直接全选中然后Finish就好了 5. 编译运行及问题
基本上按上面的操作就可以跑起来了。但电脑上多个Codeblocks多个setvarible的情况下还是可能出错些问题如下
|| Build: Debug in wxTest01 (compiler: GNU GCC Compiler) |
ld.exe||cannot find -lwxmsw30ud_dbgrid|
ld.exe||cannot find -lwxbase30ud_odbc|
ld.exe||cannot find -lwxmsw30ud_qa|
||error: ld returned 1 exit status|
|| Build failed: 4 error(s), 0 warning(s) (0 minute(s), 8 second(s)) |这时不需要太紧张
点到Projects在workspace中右键当前的项目 -- Build Options...在Project build options中选择第二页 Linker settings;将已经存在的lib先clear再到正确的文件夹下重新Add并按提示保存为相对路径点击OK退出
然后程序就可以进行编译并运行了~