有人可以指导我的方法,我将如何使用Windows命令提示符或MSYS编译wxwidget。 [我似乎无法在wxwiki / wxwidget官方书籍/其他地方找到任何东西]
我已经根据他们提供的指令(使用MSYS)编译了wxwidget。
从互联网上搜索似乎可以(可能?)通过使用MAKEFILE来做(这是正确的吗?)
如果是的话:什么目录&我该如何链接MAKEFILE中的wx库 如果不是:MAKEFILE之外的方式是什么?
我知道我可以使用类似IDE :: block的IDE,让生活更简单,但我更喜欢使用命令提示符/ msys进行编译。
提前致谢。
答案 0 :(得分:0)
我制作了一个关于此主题的视频https://www.youtube.com/watch?v=f6FDNR3lh8E 以下是要遵循的小而简单的步骤。
先决条件:
下载并安装了 GNU g++ 编译器。
将 gcc/g++ 路径设置为环境变量。
下载 WxWidgets 二进制文件:1. 头文件,2. 开发文件,3. DLL。
然后按原样提取一个文件夹。我已将它们解压缩到 D:\WxAPI 文件夹中。
看起来像 :
D:
- WxAPI 文件夹
- 包含(头文件将此文件夹压缩为 .7z)
- lib(开发文件和 DLL 将此文件夹压缩在 .7z 中,并且两个提取物都在此保存文件夹中)
设置您的项目开发结构。
我的项目开发结构:
WxExample (Project Folder)
- Build (Folder) : Contains debug and release dlls and exe
- debug (Folder) : Contains debug specific dlls and exe.
- release (Folder) : Contains release specific dlls and exe.
- inlcude (Folder) : Contains project header files.
- src (Folder) : Contains project .cpp files.
- wxCompiler.cmd : Contains compile command created with following steps.
写入编译命令
首先编译项目 *.cpp 文件: g++ ".\src*.cpp"
给出项目输出 .exe 名称: -o ".\build\release\Project_Name.exe"
向 g++ 显示项目 .h 文件位置: -I ".\include"
提供 WxWidget .h 文件: -I "D:\WxAPI\include"
找到 WxWidget setup.h 文件: -I "D:\WxAPI\lib\gcc810_x64_dll\mswu"
提供 WxWidgets 的二进制文件位置: -L "D:\WxAPI\lib\gcc810_x64_dll"
提供编译标志: -l wxbase31u -l wxmsw31u_core
这里 D:\WxAPI\lib\gcc810_x64_dll\libwxbase31u.a 文件重命名为“wxbase31u” & D:\WxAPI\lib\gcc810_x64_dll\libwxmsw31u_core.a 文件重命名为“wxmsw31u_core”作为标志。
您必须添加与您在项目中使用的类似的文件标志作为 .h
例如: -lwxmsw31u_core -lwxbase31u -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregexu -lwxexpat -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lsautlhlwlapi -lshell32 -lsautlhlwlpi -loleacc -luxtheme
这是完整的命令: g++ ".\src*.cpp" -o ".\build\release" -I "D:\WxExample\include" -I "D:\WxAPI\include" -I "D:\WxAPI\lib\gcc810_x64_dll\ mswu" -L "D:\WxAPI\lib\gcc810_x64_dll" -l wxbase31u -l wxmsw31u_core
运行 wxWidgets.cmd,就是这样。您的 exe 在您的 .\Build\release 文件夹中。