CodeBlocks:如何使用wxWidgets库DLL构建C ++应用程序

时间:2017-11-04 20:31:29

标签: c++ codeblocks wxwidgets

我已经使用Windows 10将wxWidgets和Codeblocks的二进制文件下载并安装到我的PC上.Todeblocks构建并运行HelloWorld。使用Codeblocks然后我打开一个使用wxWidgets的现有DEV-C ++项目 - Codeblocks编译没有任何问题,但是链接器失败并显示Widgets的库dll文件是“无法识别的格式”的消息。 花了几个小时在这个论坛和小部件网站上寻求帮助。我已经阅读了有关导出库的信息,它弥补了应用程序中的调用与共享DLL中的函数之间的差距,但未能找到它们。链接到Widgets库的正确方法是什么?谢谢你能给我的任何帮助。

1 个答案:

答案 0 :(得分:0)

我建议使用代码构建wxWidgets库:来自源代码的块,而不是下载使用未知编译器构建的二进制库

以下是使用code:block构建wxWidgets静态库的说明。 Ti构建DLL,修改步骤8.(注意,如果使用静态库,应用程序将启动得更快。

https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.0/wxWidgets-3.1.0.7z

下载wxWidgets源代码

解压缩到文件夹。在我的系统上,我使用C:\ Users \ James \ code \ wxwidgets-3.1.0

打开命令窗口。

cd到code :: blocks mingw文件夹。在我的系统上,这是C:\ Program Files(x86)\ CodeBlocks16 \ MinGW

输入mingwvars.bat

cd到wxwidgets文件夹。在我的系统C:\ Users \ James \ code \ wxwidgets-3.1.0

cd to ./build/msw

输入mingw32-make SHELL=CMD.exe -j4 -f makefile.gcc BUILD=release UNICODE=1 SHARED=0 MONOLITHIC=1如果您发现奇怪的'找不到文件'错误,则需要编辑makefile - 详情请见http://stackoverflow.com/a/41498057/16582

设置code :: blocks全局变量wxwidgets如下:

base                      C:\Users\James\code\wxWidgets-3.1.0
include                   C:\Users\James\code\wxWidgets-3.1.0\include
lib                       C:\Users\James\code\wxwidgets-3.1.0\lib\gcc_lib
setup ( user-defined )    C:\Users\James\code\wxWidgets-3.1.0\lib\gcc_lib\mswu