首页 文章

Windows 10上的wxWidgets 3.1.0项目错误

提问于
浏览
-1

我在这里是一个新手,我需要帮助编译我的wxwidgets项目以使用codeblocks .

我从http://www.wxwidgets.org/downloads/下载了wxwidgets windows intaller 'wxMSW-3.1.0-Setup.exe'

我运行程序安装,然后我阅读有关在系统属性>>高级系统设置>>环境变量的环境变量 . 因此我通过将变量名称设置为“path”并将变量值设置为“C:\ Program Files(x86)\ CodeBlocks \ MinGW \ bin”来实现 .

还阅读了有关在cmd提示符中为wxwidget进行构建的内容,因此启动cmd并在下面输入此类过程(有些需要花费很长时间) .

  • mingw32-make -v

  • cd C:\ wxWidgets-3.1.0 \ build \ msw

  • mingw32-make -f makefile.gcc干净

  • mingw32-make -f makefile.gcc BUILD = debug SHARED = 0 MONOLITHIC = 1 UNICODE = 1

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

毕竟我继续做一个wxwidgets项目 . 在制作wxwidgets项目时遇到两个错误“在您指定的wxwidgets目录中找不到匹配的调试配置”,并且“在您指定的wxwidgets目录中找不到匹配的发行版配置”

但后来我跳过并继续进行项目,在构建和运行之后我得到了以下这些错误 .

构建调试日志:

-------------- Build:在testwx中调试(编译器:GNU GCC编译器)---------------

mingw32-g .exe -LC:\ wxWidgets-3.1.0 \ lib \ gcc_lib -o bin \ Debug \ testwx.exe obj \ Debug \ testwxApp.o obj \ Debug \ testwxMain.o obj \ Debug \ resource.res -mthreads -lwxmsw30u -lwxpng -lwxjpeg -lwxtiff -lwxzlib -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lcomctl32 -lwsock32 -lodbc32 -mwindows C:/ Program Files(x86)/ CodeBlocks / MinGW /bin/../lib/gcc/mingw32/4.9.2/../../../../mingw32/bin/ld.exe:找不到-lwxmsw30u collect2.exe:错误:ld返回1退出状态过程以状态1(0分钟,5秒(s))终止2个错误,0个警告(0分钟,5秒(s))

构建发布日志:

-------------- Build:在testwx中发布(编译器:GNU GCC编译器)---------------

windres.exe -IC:\ wxWidgets-3.1.0 \ include -IC:\ wxWidgets-3.1.0 \ lib \ gcc_lib \ mswu -J rc -O coff -i C:\ Users \ AJIKAH~1 \ DOCUME~1 \程序\ WXWIDG~1 \ testwx \ resource.rc -o obj \ Release \ resource.res mingw32-g .exe -pipe -mthreads -D__GNUWIN32__ -D__WXMSW__ -DwxUSE_UNICODE -Wall -O2 -std = c 11 -IC:\ wxWidgets- 3.1.0 \ include -IC:\ wxWidgets-3.1.0 \ lib \ gcc_lib \ mswu -c“C:\ Users \ A JIKAH \ Documents \ Programs \ wxWidgets \ testwx \ testwxApp.cpp”-o obj \ Release \ testwxApp .o mingw32-g .exe -pipe -mthreads -D__GNUWIN32__ -D__WXMSW__ -DwxUSE_UNICODE -Wall -O2 -std = c 11 -IC:\ wxWidgets-3.1.0 \ include -IC:\ wxWidgets-3.1.0 \ lib \ gcc_lib \ mswu -c“C:\ Users \ A JIKAH \ Documents \ Programs \ wxWidgets \ testwx \ testwxMain.cpp”-o obj \ Release \ testwxMain.o mingw32-g .exe -LC:\ wxWidgets-3.1.0 \ lib \ gcc_lib -o bin \ Release \ testwx.exe obj \ Release \ testwxApp.o obj \ Release \ testwxMain.o obj \ Release \ resource.res -s -mthreads -lwxmsw30u -lwxpng -lwxjpeg -lwxtiff -lwxzlib -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lctctl32 -lwsock32 -lodbc32 -mwindows C:/ Program Files(x86)/ CodeBlocks / MinGW / bin /../ lib / gcc / mingw32 / 4.9.2 /../../../ . ./mingw32/bin/ld.exe:找不到-lwxmsw30u collect2.exe:错误:ld返回1退出状态进程终止,状态为1(0分钟,33秒)2错误,0警告(0分钟,33秒)

现在我更新代码:: blocks 16.01 to code :: blocks 17.01 .

有人可以帮我解决这个问题吗?

2 回答

  • 1

    你说你下载了“wxMSW-3.1.0-Setup.exe” . 但是这部分“...找不到-lwxmsw30u ...”意味着你正在尝试与wxWidgets 3.0中的库链接 .

    要确保您的项目尝试链接到正确版本的wxWidgets,请在codeblocks向导的第二页(请选择“请选择您要使用的wxWidgets版本”),确保选择“wxWidgets 3.1” .x“选项 .

    “匹配配置无法找到”问题的另一个常见原因是没有在向导的第8页上选择正确的选项(请选择“请选择各种配置选项”) . 由于您说您使用选项“SHARED = 0 MONOLITHIC = 1 UNICODE = 1”构建库,请务必检查“wxWidgets是否构建为单片库”和“启用unicode”并确保未选中“使用wxWidgets DLL” .

  • 0

    @MrSudden,

    您有什么理由将库构建为MONOLITHIC吗?

    这个配置,也建议不支持,从长远来看可能会导致问题 . 它也没有来自核心wx团队的大量测试,因此有很大的破损机会 .

    Build “单片”库与“multilib”库没有任何好处 .

    谢谢 .

相关问题