MinGW是Minimalist GNU for Windows, 是在windows平台上做开发的gcc工具集合,支持几乎所有的windows API,几乎可以说是VC的替代,
不过因为GCC原本并不是为windows平台开发的,其主要的目标文件,环境主要是适应Unix和Linux等操作系统,很多在linux下很容易解决的问题,
在windows下却很麻烦。
今天一下午时间都在摆弄MinGW gcc,自己写了一个dll文件并用另一个源文件调用dll中的函数。
一般在VC下很可能使用def文件,但最后很无语的是MinGW连接dll居然什么都没有用,或者是MinGW特性吧。此文把这些过程都记录下来。
环境:
操作系统: Windows 7 sp1 (64 bits),
编译器:MinGW version 4.8.1 (tdm64-2)
先做一个dll,随便编写两个函数即可,当然VC下也可以写一个DllMain ()函数的实现,此处我没有写,只使用了一个关键字__declspec (),一个mydll.h 文件和一个
mydll.c文件:
/*
author : ez
date : 2015/7/9
*/
#ifndef _MY_DLL_H
# define _MY_DLL_H_
#ifdef __cplusplus
extern "C" {
#endif
extern __declspec (dllexport) int add_range (int, int);
extern __declspec (dllexport) double average (int*, int);
#i