我正在尝试从Ubuntu笔记本电脑设置一个交叉编译器,以便可以为Windows编译命令行程序。到目前为止,我已经用g++编译了我需要的所有库,所以我想做同样的事情以产生等效的Windows二进制文件。

我已经通过apt-get安装了gcc-mingw,它安装了许多二进制文件。我已经使用i686-w64-mingw32-g++二进制文件成功地为Windows编译了一个“Hello World”程序。

但是,在编译更复杂的项目时遇到了一些问题。我注意到该二进制文件包含与标准g++不同的文件夹,并且找不到依赖项(例如boost header ,bits / predefs.h等)。有没有办法设置mingw参数,使其像g++一样开箱即用?

最佳答案

我发现了问题。我使用的Boost库是我通过apt-get安装的库。显然,这意味着许多#if defined (__GLIBC__)被自动转换为#if 1。这导致包含一些非跨平台的头文件。从网站下载库并使用它可以解决该问题。

关于c++ - 在Ubuntu上缺少MinGW的 header 依赖项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14783475/

10-16 11:27