需求:
1、把cygwin编译的程序移植到win32下,脱离cygwin的bash界面。可以用cygwin1.dll
2、在程序中需要调用system函数。
方法:
1、system对操作系统的依赖性很强!
2、system(NULL)对来检测在给定的操作系统上是否可用。若返回非0值,则表示可用。在Unix中,system总是可用的。
3、system调用返回-1,则说明可能fork或者waitpid有错
返回127,有可能是exec失败
返回其他,有可能是system正常调用,返回的是shell的终止状态。
4、在做linux到win32程序移植时,项目涉及到sock等网络编程的话,会有很多麻烦。如果想要cygwin1.dll还有办,如果要用完全脱离cygwin1.dll则需要用-mno-cygwin参数,则会出现很多头文件不存在的现象。所以在涉及到网络编程方面的话,最好不要用-mno-cygwin参数。