MinGW安装图文教程以及如何配置C语音编程环境

转载自:http://www.jb51.net/softjc/192017.html

MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序使用微软的标准C运行时间库(MSVCRT.DLL),该库在所有的 NT OS 上有效,在所有的 Windows 95 发行版以上的 Windows OS 有效,使用基本运行时间,你可以使用 GCC 写控制台模式的符合美国标准化组织(ANSI)程序,可以使用微软提供的 C 运行时间扩展。该功能是 Windows32 API 不具备的。下一个组成部分是 w32api 包,它是一组可以使用 Windows32 API 的包含文件和端口库。与基本运行时间相结合,就可以有充分的权利既使用 CRT(C Runtime)又使用 Windows32 API 功能。

MinGW安装图文教程:

下载之后安装一下(注意:这个安装并没有安装MinGW)

软件名称:
mingw(GNU工具集导入库集合) 5.1.6 官方版
软件大小:
42.1MB
更新时间:
2014-07-17

安装玩下载程序后,打开。

点击Continue进行安装

下载安装完之后设置环境变量
设置环境变量。
  a. 鼠标右击桌面“计算机”(WindowsXp是“我的电脑”)->“属性”
  b. WindowsXP时,在新弹出的属性窗口,选择“高级”->“环境变量”。
   Windows7时,在新弹出的属性窗口,选择左侧的“高级系统设置”,在新弹出的属性窗口,选择“高级”->“环境变量”。
  c. 把MinGW安装目录的bin目录的路径追加到PATH里,然后确定。
注意:箭头指的两个分号一定要加上并且分号一定要在英文输入模式下输入

最后在CMD中输入gcc -v,看看有没有安装成功,如果出现一下画面说明安装成功

改系统环境变量不是很好, 新增一个用户Path变量就OK了, 不止一次遇到系统变量被删除的人突然发现命令提示符N多命令不好使了

基本用法: 
在mingw环境中生成和使用dll都是十分方便的。 
1.生成dll 
gcc(g++) -shared -o test.dll test.c(test.cpp) 
通过该命令生成test.dll,将导出test.c中非静态的函数和相关的类。

(注by asper:该命令行在处理jni涉及的dll时无效) 
我使用微软C++编译器,cl命令对带有空格的路径也是无效的,需要用""括住

2.连接dll到exe中 
mingw使用dll的方式和静态库.a的方式是一样的,连接的时候只需要加上-ltest即可,没有lib前缀的要求。 
3.编写jni调用的dll 
有办法了! 是gcc少了行参数。 如下: 
gcc -I%JAVA_HOME%\include -I%JAVA_HOME%\include\win32 -Wl,--add-stdcall-alias -shared -o call.dll call.c
参数:-Wl,--add-stdcall-alias 可以为函数加上标准调用前缀(stdcall @nn)。 
这样编译出的dll就可以了。都知道win32中dll中的函数要求有标准调用前缀,在JNI中不方便手动处理这个,Sun又没说清楚这事由编译器办。所以搞得我很郁闷。找了大半个月,终于在一个很古老的网页上找到答案。

基本上和VC的界面差不多 学习C语言用的最多的还是VC++ 6.0

MinGW安装图文教程以及如何配置C语音编程环境的更多相关文章

  1. MapGIS6.7安装图文教程(完美破解)

    mapgis安装比较简单,主要注意在安装的时候,先打开软件狗,然后再进行软件安装,一般就不会照成其他安装失败的现象,有时候安装之前没有打开软件狗也安装成功了,也有这情况,不过软件使用也需要软件狗的支持 ...

  2. MySQL5.7压缩包安装图文教程

    MySQL5.7压缩包安装图文教程 一.下载网址:https://dev.mysql.com/downloads/ 选择5.7版本 二.解压 下载完成后解压,解压后如下(zip是免安装的,解压后配置成 ...

  3. Windows+Git+TortoiseGit+COPSSH安装图文教程【转】

    转自:http://blog.csdn.net/aaron_luchen/article/details/10498181/ Windows+Git+TortoiseGit+COPSSH 安装图文教程 ...

  4. Joomla详细安装图文教程

    Joomla 详细安装图文教程 第一步,配置网站信息 配置数据库:这里我选择MySQLi,可以根据自己的选择         安装-- 安装完成!

  5. git版本控制-- Windows+Git+TortoiseGit+COPSSH安装图文教程

    Windows+Git+TortoiseGit+COPSSH 安装图文教程 教程网址: http://www.liaoxuefeng.com/wiki/0013739516305929606dd183 ...

  6. MYSQL5.7下载安装图文教程

    MYSQL5.7下载安装图文教程 一. MYSQL两种安装包格式 MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的.zip格式相当于绿色版,不需要安装,只需解压缩之后就可以使用了,但 ...

  7. tomcat安装图文教程

    tomcat安装图文教程 运维 memory 发布于June 1, 2013 标签: Windows, Tomcat 下载Tomcat安装文件,官方下载地址是:http://tomcat.apache ...

  8. Pro Tools安装图文教程

    Pro Tools安装图文教程   Avid Pro Tools是Digidesign公司出品的一款音质最佳.音频制作强大的软件,能够在Mac或PC上为影片编曲.录制.编辑和混制高品质音乐或声音,生成 ...

  9. Cocos2d-x v3.1 安装图文教程(二)

       Cocos2d-x v3.1 安装图文教程(二) 如果我们需要在Android平台上运行就必须安装android的SDK,如果我们只想在window上运行就只需要安装Cocos2d-x就行了.当 ...

随机推荐

  1. Ajax综合应用大全(全面解析)

      AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX = 异步 JavaScrip ...

  2. 理解Storm可靠性消息

    看过一些别人写的, 感觉有些东西没太说清楚,个人主要以源代码跟踪,参考个人理解讲述,有错误请指正. 1基本名词 1.1 Tuple: 消息传递的基本单位.很多文章中介绍都是这么说的, 个人觉得应该更详 ...

  3. LinQ 简介

    LinQ是3.0新加的语法.用起来比较方便,我们可以使用较简单的方法来过滤数据和处理数据. 使用场景: 可以看到LINQ使用场景还是很多的.现在写项目基本都会用到. 在出现委托之前,我们来查找对象 在 ...

  4. js标准对象——Date

    在JavaScript中,Date对象用来表示日期和时间. 要获取系统当前的时间: var now = new Date(); alert(now); now;//Mon Oct 23 2017 11 ...

  5. Django-rest-framework(七)swagger使用

    在我们接口开发完之后,需要交付给别人对接,在没有使用swagger的时候,我们需要单独编写一份api接口文档,由postman之类的工具进行请求得到返回的结果.而有了swagger之后,可以通过提取接 ...

  6. C++中的头文件(.h)和源文件(.cpp)都应该写什么?

    头文件(.h):写定义和声明写类的声明(包括类里面的成员和方法的声明).函数原型.#define常数等,但是一般来说不写具体的实现.注意: 1.在写头文件的时候需要注意,在开头和结尾处必须按照如下样式 ...

  7. JSONP 通用函数封装

    function jsonp({url, params, callback}) { return new Promise((resolve, reject) => { let script = ...

  8. Debug实验学习汇编

    R命令查看.改变CPU寄存器的内容: D命令查看内存中的内容: E命令改写内存中的内容: U命令将内存中的机器指令翻译成汇编指令: T命令执行一条机器指令: A命令以汇编指令的格式在内存中写入一条机器 ...

  9. Maximum Subsequence Sum

    Given a sequence of K integers { N​1​​, N​2​​, ..., N​K​​ }. A continuous subsequence is defined to ...

  10. Linux 学习第一天

    一.开源许可: GNU GPL(GNU General Public License,GNU 通用公共许可证): 开源许可特点:1.使用自由 2.传播自由 3.修改自由 4.衍生品自由 二.源代码安装 ...