【问题标题】:WxWidgets with Mingw wx/msw/libraries.h: not found带有 Mingw wx/msw/libraries.h 的 WxWidgets:未找到
【发布时间】:2022-09-24 02:49:50
【问题描述】:

我正在使用 Debian 11,我安装了 Mingw 并使用以下命令构建了 WxWidgets:

../configure --prefix=/usr/x86_64-w64-mingw32 --host=x86_64-w64-ming32 --build=x86_64-linux --with-msw && make && sudo make install

我正在使用以下命令来构建:

x86_64-w64-mingw32-g++ wx.cpp `wx-config --cxxflags --libs std,aui`

我收到以下错误:

wx/msw/libraries.h: not found

但文件存在于:/usr/x86_64-w64-mingw32/include/wx-3.2/wx/msw/libraries.h

我哪里错了?

PS:我不使用任何类型的 IDE。

  • 通过向编译器提供指定正确搜索路径的适当命令行选项,告诉编译器在哪里查找头文件和库。在编译器默认搜索位置之外,除非您提供帮助,否则它不会神奇地发现东西。
  • 如果你自己运行命令wx-config --cxxflags --libs std,aui,它会输出什么?
  • wx-config --cxxflags --libs std,aui -I/usr/local/lib/wx/include/gtk3-unicode-3.2 -I/usr/local/include/wx-3.2 -D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXGTK__ -pthread -L/usr/local/lib -pthread -lwx_gtk3u_aui-3.2 -lwx_gtk3u_xrc-3.2 -lwx_gtk3u_html-3.2 -lwx_gtk3u_qa-3.2 -lwx_gtk3u_core-3.2 -lwx_baseu_xml-3.2 -lwx_baseu_net-3.2 -lwx_baseu-3
  • 我试过了,x86_64-w64-mingw32-g++ wx.cpp -I/usr/local/lib/wx/include/gtk3-unicode-3.2 -I/usr/local/include/wx-3.2 -L/usr/local/ lib wx-config --cxxflags --libs std,aui,但我得到同样的错误
  • 有没有人有更多的提示?

标签: c++


【解决方案1】:

朋友,终于成功了,就是你上面说的,链接到终端的wx-config只适用于linux,/usr/x86_64-w64-mingw32/bin/wx-config里面的windows编译是什么.

当我想为 linux 编译时,我通过: g++ wx.cpp wx-config --cxxflags --libs std,aui

当我去 Windows 时,我通过: x86_64-w64-mingw32-g++ wx.cpp /usr/x86_64-w64-mingw32/bin/wx-config --cxxflags --libs std,aui

PS:我不得不将一些 dll 复制到应用程序文件夹,但一切都解决了。

非常感谢大家的耐心。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-18
    • 2021-05-18
    • 1970-01-01
    • 2013-08-28
    • 2015-08-08
    • 1970-01-01
    • 2017-04-06
    • 2017-02-21
    相关资源
    最近更新 更多