Ubuntu上缺少MinGW的标头依赖项
Missing header dependencies with MinGW on Ubuntu
我正试图从我的Ubuntu笔记本电脑上设置一个交叉编译器,这样我就可以编译Windows的命令行程序。到目前为止,我已经用g++编译了所有需要的库,所以我想做同样的事情,以生成等效的Windows二进制文件。
我通过apt-get安装了gcc-mingw,它安装了许多二进制文件。我使用i686-w64-mingw32-g++
二进制文件成功地编译了一个适用于windows的"Hello World"程序。
然而,在我更复杂的项目的编译过程中,我遇到了一些问题。我注意到这个二进制文件包含了与标准g++不同的文件夹,并且它找不到依赖项(例如,boost headers、bits/predefs.h等)。有没有办法设置mingw参数,使其像g++开箱即用一样工作?
我发现了问题。我使用的Boost库是我通过apt-get安装的。显然,这意味着许多#if defined (__GLIBC__)
在#if 1
中被自动转换。这导致包含了一些非跨平台的头文件。从网站下载图书馆并使用它解决了问题。
相关文章:
- 如何从C++中的依赖类型中获得它所依赖的类型
- 在VS代码中交叉编译Windows与Linux上的MinGW的SDL程序
- 如何将C++中的库和头与MinGW一起使用
- 为什么与常规GCC不同,即使有"学究性错误",MinGW-GCC也能容忍丢失的返回类型
- 将--whole archive链接器选项与CMake和具有其他库依赖项的库一起使用
- 将依赖名称显式标记为类型名和模板的奇怪之处
- 在 Windows 上,是否可以让 dll 在不使用 PATH 环境变量的情况下在另一个文件夹中查找依赖项?
- C++GTKMM gui循环依赖关系
- 无法在windows上使用mingw将sqlite3与c连接
- 通过ccmake在cmake中缓存依赖选项
- 当基类是依赖类型时,这是一个缺陷吗
- MinGw 无法从 cmake 编译测试文件
- 从不同的附加依赖项中识别等同命名的函数
- 为什么<iostream>依赖MinGW dll?
- 避免使用MINGW编译器和NAR-Maven-Plugin避免使用机器依赖的POM
- 无法使用MinGW构建OIS(作为Ogre3D依赖项的一部分)
- Windows上与Mingw的DLL依赖关系
- Netbeans下没有DLL依赖Mingw
- Mingw依赖于非windows本机DLL
- Ubuntu上缺少MinGW的标头依赖项