亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

mingW與cygwin

2024-06-28 13:23:43
字體:
來源:轉載
供稿:網友
mingW與cygwin

轉自:http://hi.baidu.com/ooxxer/item/d25dccc072846a50ac00ef7e#

首先MingW和cygwin都可以用來跨平臺開發。  MinGW是Minimalistic GNU for Windows的縮寫,也就是Win版的GCC。  Cygwin則是全面模擬了linux的接口,提供給運行在它上面的的程序使用,并提供了大量現成的軟件,更像是一個平臺。  相對的MingW也有一個叫MSys(Minimal SYStem)的子項目,主要是提供了一個模擬Linux的Shell和一些基本的Linux工具。因為編譯一個大型程序,光靠一個GCC是不夠的,還需要有Autoconf等工具來配置項目,所以一般在Windows下編譯ffmpeg等Linux下的大型項目都是通過Msys來完成的,當然Msys只是一個輔助環境,根本的工作還是MingW來做的。 用MingW和cygwin編譯出來的程序的區別。  首先MingW和cygwin都不能讓Linux下的程序直接運行在Windows上,必需通過源代碼重新編譯。  現代操作系統包括Windows和Linux的基本設計概念像進程線程地址空間虛擬內存這些都是大同小異的,之所以二者上的程序不能兼容,主要是它們對這些功能具體實現上的差異,首先是可執行文件的格式,Window使用PE的格式,并且要求以.EXE為后綴名。Linux則使用Elf。其次操作系統的API也不一樣,如Windows用CreatePRocess()創建進程,而Linux使用fork()。  所以要移植程序必然要在這些地方進行改變,MingW有專門的W32api頭文件,來把代碼中Linux方式的系統調用替換為對應的Windows方式。而Cygwin則通過cygwin1.dll這個文件來實現這種API的轉換,并模擬一個Linux系統調用接口給程序,程序依然以Linux的方式調用系統API,只不過這個API在cygwin1.dll上,cygwin1.dll再調用Windows對應的實現,來把結果返回給程序。  可以用查看他們編譯好的程序的導入表來驗證這點。  二者生成的程序都是能在Windows上運行的EXE文件,顯然都是PE格式,用一個PE格式查看工具檢查一下就能發現,Cygwin生成的程序依然有fork()這樣的Linux系統調用,但目標庫是cygwin1。而MingW生成的程序,則全部使用從KERNEL32導出的標準Windows系統API。  這樣看來用Mingw編譯的程序性能會高一點,而且也不用帶著那個接近兩兆的cygwin1.dll文件。  但Cygwin對Linux的模擬比較完整,甚至有一個Cygwin X的項目,可以直接用Cygwin跑X。  另外Cygwin可以設置-mno-cygwin的flag,來使用Mingw編譯。  而與Cygwin更有可比性的MSys上的工具也是通過Cygwin這種模擬的方式來提供的。  總之這兩個項目有千絲萬縷的關系,一個不恰當的比方,如果Mingw是MFC,Cygwin就是.NET了。

=====================

1.修改編譯器,讓window下的編譯器把諸如fork的調用翻譯成等價的形式--這就是mingw的做法.  2.修改庫,讓window提供一個類似unix提供的庫,他們對程序的接口如同unix一樣,而這些庫,當然是由win32的API實現的--這就是cygwin的做法.


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
韩国19禁主播vip福利视频| 亚洲999一在线观看www| 久久精品国产欧美激情| 久久精彩免费视频| 91久久久久久久久| 亚洲国产精品高清久久久| 亚洲一区二区久久久久久久| 狠狠躁18三区二区一区| 久久成人18免费网站| 欧美激情欧美激情| 欧美精品日韩www.p站| 伊人亚洲福利一区二区三区| 欧美高跟鞋交xxxxxhd| 欧美一二三视频| 欧美激情综合亚洲一二区| 亚洲欧美一区二区三区在线| 日本高清视频一区| 亚洲香蕉成人av网站在线观看| 欧美激情第一页xxx| 北条麻妃在线一区二区| 91色视频在线观看| 美女国内精品自产拍在线播放| 亚洲视频在线观看网站| 国产成人精品优优av| 性色av一区二区三区红粉影视| 57pao国产成人免费| 亚洲综合av影视| 中文字幕欧美精品在线| 欧美高清激情视频| 日韩av不卡在线| 亚洲第一网中文字幕| 欧美精品久久久久a| 国产精品第2页| 57pao国产精品一区| 亚洲第一精品夜夜躁人人躁| 亚洲男人天堂手机在线| 亚洲天堂免费在线| 成人午夜小视频| 亚洲品质视频自拍网| 最近日韩中文字幕中文| 亚洲精品国产精品国自产观看浪潮| 亚洲va欧美va在线观看| 成人羞羞国产免费| 欧美性视频在线| 精品日本高清在线播放| 日韩视频免费观看| 中文字幕不卡在线视频极品| 国产啪精品视频| 久久男人资源视频| 中文欧美日本在线资源| 亚洲一区免费网站| 91精品中文在线| 成人精品视频99在线观看免费| 国产精品久久久久久久久久99| 国产不卡在线观看| 国产剧情日韩欧美| 日本亚洲欧洲色| 精品国偷自产在线视频99| 国产亚洲美女久久| 日韩欧美国产高清91| 欧美亚洲国产精品| 亚洲香蕉在线观看| 亚洲成人久久久| 国产亚洲精品久久久久久牛牛| 精品视频在线播放| 国外成人免费在线播放| 亚洲综合在线播放| 国产精品美乳一区二区免费| 在线观看视频99| 精品久久久国产精品999| 日韩高清不卡av| 日韩精品极品在线观看| 疯狂做受xxxx欧美肥白少妇| 在线观看久久av| 中文字幕亚洲一区二区三区五十路| 亚洲综合最新在线| 中文字幕亚洲无线码在线一区| 国产成人av在线| 69精品小视频| 欧美综合激情网| 亚洲黄一区二区| 欧美日韩成人精品| 亚洲欧美成人在线| 91精品久久久久久久久久| 国产成人精品一区二区三区| 亚洲最大中文字幕| 一区二区三区四区在线观看视频| 精品久久久久久久久中文字幕| 成人www视频在线观看| 奇米4444一区二区三区| 九九九久久国产免费| 欧美日韩日本国产| 琪琪亚洲精品午夜在线| …久久精品99久久香蕉国产| 精品国产91久久久| 久久香蕉国产线看观看av| 日韩欧美在线中文字幕| 青青在线视频一区二区三区| 91免费国产网站| 欧美激情久久久久久| 久久久久久久久电影| 亚洲视频专区在线| 精品福利免费观看| 亚洲午夜女主播在线直播| 久久资源免费视频| 久久久国产精品亚洲一区| 日韩av黄色在线观看| 欧美视频一区二区三区…| 欧美日韩亚洲国产一区| 成人免费网站在线| 一个人看的www久久| 国产精品国产三级国产aⅴ浪潮| 欧美亚洲视频一区二区| 国产又爽又黄的激情精品视频| 国产精品免费在线免费| 亚洲黄页网在线观看| 91香蕉嫩草神马影院在线观看| 青青a在线精品免费观看| 欧美午夜电影在线| 国产精品va在线播放| 国产精品福利在线观看| 精品久久久久久久久久| 久久久女人电视剧免费播放下载| 6080yy精品一区二区三区| 国内精品美女av在线播放| 欧美在线视频免费播放| 韩国三级日本三级少妇99| 成人免费网视频| 国产精品久久久久aaaa九色| 红桃av永久久久| 一区二区三区视频免费在线观看| 亚洲色图校园春色| 国产精品久久久久av免费| 国产免费一区二区三区在线能观看| 欧美性猛交xxxxx水多| 久久久久久久av| 亚洲区在线播放| 亚洲午夜久久久影院| 精品国产一区av| 亚洲精品av在线| 国产视频亚洲精品| 日本高清+成人网在线观看| 欧美极品少妇xxxxⅹ免费视频| 伊人伊成久久人综合网小说| 国产精品jvid在线观看蜜臀| 亚洲性无码av在线| 国产日韩中文字幕在线| 中文字幕视频在线免费欧美日韩综合在线看| 日韩在线免费高清视频| 欧美一级bbbbb性bbbb喷潮片| 亚洲色图15p| 国内精品久久久久伊人av| 久久精品精品电影网| 91精品国产综合久久久久久蜜臀| 欧美一区二区视频97| 久久久久久久久电影| 国产精品黄页免费高清在线观看| 日韩欧美亚洲范冰冰与中字| 国产欧美婷婷中文| 亚洲精品成人久久久| 亚洲最新av在线网站| 色播久久人人爽人人爽人人片视av| 久久亚洲一区二区三区四区五区高| 欧美一级大片在线观看|