我已将 MinGW-W64 安装到$HOME/mingw32
:
~$ ls -l mingw32
insgesamt 32
drwxr-xr-x 2 js js 4096 16. Aug 16:41 bin
drwxr-xr-x 10 js js 4096 26. Nov 14:49 i686-w64-mingw32
drwxr-xr-x 2 js js 4096 16. Aug 16:28 include
drwxr-xr-x 3 js js 4096 16. Aug 16:41 lib
drwxr-xr-x 3 js js 4096 16. Aug 16:36 libexec
drwxr-xr-x 14 js js 4096 16. Aug 16:41 licenses
drwxr-xr-x 4 js js 4096 26. Nov 15:17 QtWin32
drwxr-xr-x 6 js js 4096 16. Aug 16:41 share
~$
i686-w64-mingw32-gcc-4.7.1-2-release-linux64_rubenvb.tar.xz.tar
这是由于在我的 linux64 构建系统上为 windows32 主机提取和安装了交叉编译的各种软件。例如libpng
:
$ ./configure --prefix=$HOME/mingw32/i686-w64-mingw32 --host=i686-w64-mingw32
要使用已安装的工具,我必须添加$HOME/mingw32/i686-w64-mingw32/bin
到我的PATH
环境变量中。但是,我不愿意这样做,因为这个二进制目录包含
$ ls $HOME/mingw32/i686-w64-mingw32/bin
ar g++ gcc ld nm objcopy ranlib strip # much more
因此,我认为将交叉编译包安装到的正确位置可能是$HOME/mingw32
,这样我就可以省略添加$HOME/mingw32/i686-w64-mingw32/bin
到我的PATH
. 但是,这不起作用,因为./configure
当这些标头安装到$HOME/mingw32/include
. 当我将它们安装到 时$HOME/mingw32/i686-w64-mingw32/include
,它们被./configure
脚本找到了。
我需要做一些特别的事情来告诉交叉编译器$HOME/mingw32/include
作为内置包含路径吗?我的意思是,就像/usr/include
原生编译器内置的一样。
因此,我不确定要使用的正确前缀是什么。有人可以解释正确的路径和 and 的确切含义$HOME/mingw32/
吗$HOME/mingw32/i686-w64-mingw32
?