cygwin编译的win32程序不需要cygwin1.dll库的方法(1)
来源:互联网 发布:php商城项目仓库管理 编辑:程序博客网 时间:2024/06/08 16:49
cygwin提供了在windows下使用gcc,g++编译器的方法,但是在cygwin下编译的程序,运行的时候需要cygwin1.dll库
以下文章翻译自国外网站http://digipen2.xmmg.com/dpweb/docs/mno-cygwin.html
简单的代码(注:以下都是在cygwin环境下)
#include <stdio.h>int main(void){ printf("Hello\n"); return 0;}
编译链接如下:
gcc -Wall hello.c -o hello-cygwin.exe
使用cygcheck(cygwin tools)来看运行时依赖的库
C:\sandbox\CS120\gcc>cygcheck ./hello-cygwin.exe.\hello-cygwin.exe C:\cygwin\bin\cygwin1.dll C:\WINNT\system32\ADVAPI32.DLL C:\WINNT\system32\NTDLL.DLL C:\WINNT\system32\KERNEL32.DLL C:\WINNT\system32\RPCRT4.DLL
编译不需要cygwin1.dll库支持的可执行文件
gcc -mno-cygwin -Wall hello.c -o hello-no_cygwin.exe
查看运行时依赖的库
C:\sandbox\CS120\gcc>cygcheck ./hello-nocygwin.exe.\hello-nocygwin.exe C:\WINNT\system32\msvcrt.dll C:\WINNT\system32\KERNEL32.dll C:\WINNT\system32\ntdll.dll
可以看出不依赖cygwin1.dll了
实际上这种方法在最新版本的cygwin中已经不可用了,替代方法见
http://blog.csdn.net/simeone18/article/details/7017276
- cygwin编译的win32程序不需要cygwin1.dll库的方法(1)
- cygwin编译的win32程序不需要cygwin1.dll库的方法
- cygwin编译的win32程序不需要cygwin1.dll库的方法(2)
- cygwin编译的win32程序不需要cygwin1.dll库的方法(3)
- cygwin编译的win32程序不需要cygwin1.dll库的方法
- 去除 Cygwin 编译的程序对Cygwin1.dll的依赖
- cygwin 编译 win32 程序 同时不依赖 cygwin1.dll
- 使用cygwin编译win32程序
- 在Dos下运行exe程序的时候出现找不到Cygwin1.dll文件的情况总结
- NDK环境搭建(Native Code的编译,不需要Cygwin)
- NDK环境搭建(Native Code的编译,不需要Cygwin)
- NDK环境搭建(Native Code的编译,不需要Cygwin)
- 运行smbclient提示没有找到cygwin1.dll的解决方法
- cygwin1.dll丢失,无法启动此程序
- 【Cygwin】编译c程序成dll文件
- cygwin与漏洞攻击程序的编译
- 平台移植 - 4 (Cygwin与Win32程序的交互)
- jni java调用win32 dll的方法
- window.location.href = window.location.href刷新页面的问题
- javascript验证浮点数该如何做?
- json格式的 jquery ajax 实例
- oracle job 情况的查看处理
- 怎么在SQL2000里面添加从别的地方备份过来的数据啊,附加数据库的时候它提示不是正确的MDF文件
- cygwin编译的win32程序不需要cygwin1.dll库的方法(1)
- mysql中的浮点类型
- java 中 synchronized关键字 volatile关键字 用法
- 共享内存的使用方法
- 软件界面设计--需求分析师的核心能力
- ld.so.conf 文件与PKG_CONFIG_PATH变量(转)
- 项目中的需求分析管理
- OpenCV 视频监控(Video Surveilance)的算法体系
- lwIP协议栈的pbuf结构体