我們在 Windows10 操作系統(tǒng)下,安裝了 git 客戶端之后,可以通過 git-bash.exe 打開一個 shell:
執(zhí)行一些 linux 系統(tǒng)里的命令:
注意到上圖紫色的?MINGW64.
Mingw-w64 是原始 mingw.org 項目的改進版,旨在支持 Windows 系統(tǒng)上的 GCC 編譯器。 它在 2007 年對它進行了分叉,以提供對 64 位和新 API 的支持。 從那時起,它得到了廣泛的使用和分發(fā)。
而所謂 MinGW(“Minimalist GNU for Windows”),原名 mingw32,是一個免費的開源軟件開發(fā)環(huán)境,用于創(chuàng)建 Microsoft Windows 應(yīng)用程序。 2005 年至 2008 年創(chuàng)建了一個名為 Mingw-w64 的替代項目,作為 MinGW 項目的一個發(fā)展分叉。
MinGW 包括 GNU 編譯器集合 (GCC) 的一個端口、用于 Windows 的 GNU Binutils(匯編器、鏈接器、存檔管理器)、一組可自由分發(fā)的 Windows 特定頭文件和靜態(tài)導(dǎo)入庫,這些庫支持使用 Windows API、Windows GNU 項目的 GNU 調(diào)試器和其他實用程序的本機構(gòu)建。
MinGW 不依賴第三方 C 運行時動態(tài)鏈接庫 (DLL) 文件,并且由于運行時庫不是使用 GNU 通用公共許可證 (GPL) 分發(fā)的,因此無需隨生成的程序分發(fā)源代碼, 除非在程序的其他地方使用了 GPL 庫。
MinGW 既可以在本地 Microsoft Windows 平臺上運行,也可以在 Linux(或其他 Unix)上交叉托管,或者在 Cygwin 上“跨本地”運行。盡管在 MinGW 下生成的程序是 32 位可執(zhí)行文件,但它們可以在 32 位和 64 位版本的 Windows 中使用。
同 cygwin 的比較
盡管 Cygwin 和 MinGW 都可用于將 Unix 軟件移植到 Windows,但它們有不同的方法:
- Cygwin 旨在提供一個完整的 POSIX 層,包括所有主要 Unix 系統(tǒng)調(diào)用和庫的完整實現(xiàn)。兼容性被認(rèn)為比性能更重要。
- 另一方面,MinGW 的優(yōu)先事項是簡單性和性能。因此,它不提供某些無法使用 Windows API 輕松實現(xiàn)的 POSIX API,例如 fork()、mmap() 和 ioctl()。
使用本身已移植到 MinGW 的跨平臺庫編寫的應(yīng)用程序,例如 SDL、wxWidgets、Qt 或 GTK,在 MinGW 中編譯通常會像在 Cygwin 中一樣容易。
用 Cygwin 編寫的 Windows 程序運行在一個 Copyleft 兼容 DLL 之上,該 DLL 必須與程序一起分發(fā),以及程序的源代碼。 MinGW 不需要兼容層,因為基于 MinGW 的程序是通過直接調(diào)用 Windows API 編譯的。
MinGW 和 MSYS 的組合提供了一個小型、自包含的環(huán)境,可以將其加載到可移動媒體上,而無需在注冊表或計算機上的文件中留下條目。
也可以在 POSIX 系統(tǒng)下用 MinGW-GCC 交叉編譯 Windows 應(yīng)用程序。這意味著開發(fā)人員不需要安裝帶有 MSYS 的 Windows 來編譯在帶有或不帶有 Cygwin 的 Windows 上運行的軟件。
文章來源:http://www.zghlxwxcb.cn/news/detail-606515.html
?文章來源地址http://www.zghlxwxcb.cn/news/detail-606515.html
到了這里,關(guān)于Windows環(huán)境下git客戶端中的git-bash和MinGW64的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!