MinGW学习

MinGW32 和 MinGW-w64 区别

MinGW32先开发,只能编译32位程序;
MinGW-w64从MinGW32发展而来,支持编译64和32位位程序,同时可以进行交叉编译。

MinGW-w64类型:
x86_64: 支持在x64和x86上运行
i686: 支持在x86上运行

i386/i686/x86_64区别

i386 适用于intel和AMD所有32位的cpu,以及采用X86架构的32的cpu。
X86_64 适用于intel和AMD采用X86架构的64位cpu,兼容32位。

关于mingw-w64-x86_64:
生成64位库只要用默认的参数编译即可,而生成32位库则要用-m32参数编译.

对于mingw-w64-i686:默认生成32位程序

查看默认库的搜索路径

minGW 下面执行

ld --verbose | grep SEARCH_DIR | tr -s ' ;' \\012

如何指定某个库的路径

-llibrary
foo.o -lz bar.o 搜索库 z 在 foo.o 之后。

-Lsearchdir
–library-path=searchdir

使用环境变量设置附加库的路径

export LIBRARY_PATH
LIBRARY_PATH="C:/mingw/local/lib;$LIBRARY_PATH"