• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            MyMSDN

            MyMSDN記錄開發新知道

            如何安裝Minimal SYStem(MSYS)

            image

            image

            image

            image

            image

            image

            image

            image

            image

            image

            以上步驟基本上沒有啥技術含量(一點都沒有噢,只為記錄一下,圖片也漂亮點),注意到最后這個黑色的命令行,在安裝結束之后會出現這么個命令行,其中會問你是否已經安裝過MinGW了?在回答y之后,要求輸入MinGW的地址,注意,在資源管理器里面我們都是用“\”來代表路徑層級的分層的,在這里是用“/”(方向不一樣)。另外地址中不允許帶有空格。這一點在《如何安裝MinGW》一文中已經有提到。

            image 

            MSYS(Minimal GNU(POSIX)system on Windows)

            由于本文的主角是它,我們先來看看它是什么?從名字的全稱我們可以看出它是一個小型的GNU環境。MSYS在windows下模擬了一個類unix的終端,它只提供了MinGW的用戶載入環境,Cygwin在windows下模擬了一個linux環境,它們帶有一些unix終端下常用的工具,如ls、tail、tar,其實它們都是相應unix/linux工具的windows版,而且它們的環境會繼承windows的一些系統變量,如path,如果windows下裝有ruby、rails,在它們的環境里同樣都可以直接運行。

            Cygwin(基于GPL licensed協議)

            Cygwin并不是GNU,它只是實現了許多Windows API中沒有的Unix風格的調用(如fork,spawn,signals,select,sockets等),并將它們封裝在Cygwin.dll中,讓Windows系統能夠模擬出Unix的調用,進而直接使用Unix上的交叉編譯器來生成可以在windows平臺上運行的工具集。以這些移植到windows平臺上的開發工具為基礎,cygnus又逐步把其他的工具(幾乎不需要對源代碼進行修改,只需要修改他們的配置腳本)軟件移植到windows上來。這樣,在windows平臺上運行bash和開發工具、用戶工具,感覺好像在unix上工作。

            MinGW(Minimalist GNU For Windows)

            主要由GNU binary utilities、GCC和GDB組成。同時還包括一些必要的庫,例如libc(C Runtime),及專門用于Win32環境的API接口庫。如果你想學習linux環境下的編程,而又不想裝linux,那你就裝一個MinGW吧。

            它與Cygwin實現了相同的夢想,也是為了實現在Windows上能夠運行Unix上的工具。但與之不同的是它采用的是Windows C類庫(mscvrt)而不是Cygwin采用的GNU C運行時類庫。同時也因為兩個運行時類庫的端口不同而導致兩者有諸多區別。但是卻因為采用了直接支持Windows環境的Windows C運行時類庫,它也給CDT(C/C++ Development Toolkit)提供了最好的支持。同時,它避免了像Cygwin使用了GPL協議。

            C/C++ Development Toolkit(CDT)

            C/C++ Development Toolkit(CDT)是基于Eclipse特征的,為使用C/C++編程語言,提供創建、編輯、導航、生成(build)和調試項目的一個集合。
            它不包含必要的轉換C/C++代碼的編譯器和調試器來執行和調試程序,但是它提供了一個允許這些工具集成在一個相容方式下協作的框架。它允許你根據你的項目需求來混合和匹配這些工具。
            通常,商業發行的CDT包括了必要的工具集。如果你沒有,那么最基本的CDT提供了綜合的GNU工具來生成和調試。他們通常指Cygwin和MinGW等。

            做了三個簡單的概念介紹后,我們知道了它們各自的一些特征。它們都不是像Visual Studio這樣可以拿來直接就用的軟件,它們的使用需要一些必要的配置。這也是社區文化的一種體現。

            以上的安裝步驟最后一步出現的命令行模式,確實是大部分安裝程序中不常出現的,那么它究竟為我們做了什么呢?帶著這樣的疑問,我們滾動到這副截圖來看看它的內容。從內容中我們可以看到在安裝完畢之后我們會被要求輸入MinGW的所在目錄,根據文檔中的說明,我們可以將MinGW放在除了MSYS目錄的任何的一個目錄中(也就是如圖D:\GNU\MSYS位置不能放),至于放了之后會怎樣,筆者也不知曉,望知曉者可以告知在下,定當感激不盡。

            之后它會根據我們給出的路徑在MSYS目錄下的etc文件夾(如本例中的D:\GNU\MSYS\1.0\etc)內找到fstab文件并進行編輯(會在稍后描述)。然后檢查我們給出的路徑下的一些文件。從圖中我們可以看到我們缺少了一個非常重要的make.exe文件,這個文件其實存在,只是文件名不同,我們可以將其重命名為make.exe。(本例中,我們將已經安裝的D:\GNU\MinGW\bin\mingw32-make.exe修改為D:\GNU\MinGW\bin\make.exe即可)

            fstab文件

            與fstab相同路徑下的有個fstab.sample文件,這是一個示例文件。您可以仿造它進行一些設置。(如果您按照之前我們的安裝步驟,并且中途沒有出現偏差的話,那么通常您已經正確設置了fstab文件,如果因為其它原因您需要修改該文件,也可以參考該部分內容。)fstab文件將是dll初始化期間唯一被載入的文件。它的格式我們可以看到,是由一個物理路徑+“空格/TAB制表格”+Mount_Point來維持的。它實現了一個路徑映射的體系結構,以至于我們不必手動地搬動那些文件到正確的目錄,也能夠讓我們正確地訪問我們所需的文件。

            下圖為fstab.sample文件

            fstab.sample

            下面我們打開fstab看看系統之前為我們設置了什么:

            fstab

            從本例子中我們發現了系統為我們做好了這樣一個映射。將D:/gnu/mingw映射到了/mingw。

            MSYS只是一個模擬的平臺,我們除了讓它跟MinGW實現互聯互通,我們也能夠讓它跟系統上的其他程序互聯互通。

            通過運行D:\GNU\MSYS\1.0\msys.bat批處理文件,我們可以打開如上圖所示的命令行窗口(它的功能基本上類似于運行了D:\GNU\MSYS\1.0\bin\sh --login -i語句)

            sh

            執行的內容相當于運行了下面的批處理語句。

            image 

            下面讓我們打開一個word程序。我們在命令行下輸入:

            $ start '/d/Program\ Files/Microsoft\ Office/Office12/WINWORD' $@

            語句(具體路徑視您本機的word安裝程序路徑所定)

            我本機的路徑為

            D:\Program Files\Microsoft Office\Office12\WINWORD.EXE

            我們很容易看出它們二者之間的區別。下面我就針對這些區別做一些簡要的解釋。

            首先我們看“D”是一個盤符,在這個映射里面,我們規定,盤符若為“D:\”我們就將其轉化為“/d”,同時為了與Unix的使用習慣一致,在資源管理器中表示層次的“\”符號都變成了“/”,若遇到空格,我們則以“\ ”(\+空格)來表示。因此我們有了如上一個等價的路徑轉換。

            image

            復制粘帖

            說到使用這樣的命令行方式大家一定覺得還不是那么方便。因為這里不能夠復制粘貼。但你錯了,這里復制粘貼也很容易。

            復制:選擇你要復制的部分,然后鼠標點一下,就可以了。容易吧?

            粘帖:只需用shift+鼠標左鍵,就可以直接將剪貼板內的文字粘帖進來了。

            (更多辦法請參考doc/msys/readme.rtf)

            posted on 2008-10-01 03:09 volnet 閱讀(8124) 評論(3)  編輯 收藏 引用

            評論

            # re: 如何安裝Minimal SYStem(MSYS)[未登錄] 2008-07-28 22:39 len

            不錯不錯
            有時候截圖重現也挺累的
              回復  更多評論   

            # re: 如何安裝Minimal SYStem(MSYS) 2008-07-29 05:16 volnet

            @len
            不會累也,用WindowsLiveWriter,直接截圖貼圖就可以了,截圖開個QQ就可以了,貼圖就是Ctrl+V即可
            因為有很多時候講了一堆廢話,還不如截圖來的直接,別人在看的時候,很容易就可以找出區別和問題所在,如果只是說,人家還得去比對。
            有時候去看別人發的,文字描述是很精細,但是首先看著比較累,然后有可能別人跟我們的實際并不一樣,一些不認真的人就看不出來了。而截圖就會盡量避免這樣的問題發生。
            如果我的一點辛勞能夠帶來別人的高效,我覺得這點付出還是值得的。本篇中的截圖挺無聊的,哈哈  回復  更多評論   

            # re: 如何安裝Minimal SYStem(MSYS) 2010-01-25 10:07 Jack Yuan

            不錯,很實用的一篇文章.  回復  更多評論   

            特殊功能
             
            99久久精品国产一区二区| 99re这里只有精品热久久| 国产一区二区精品久久凹凸| 精品久久久久久国产免费了| 久久99精品久久久久久秒播 | 色狠狠久久综合网| 99精品久久精品一区二区| 亚洲精品tv久久久久久久久| 99久久精品免费看国产一区二区三区| 亚洲伊人久久综合中文成人网| 久久99精品久久久久久久久久| 久久露脸国产精品| 久久久精品人妻一区二区三区蜜桃| 国内精品久久久久久中文字幕| 人妻无码久久一区二区三区免费| 国产高潮久久免费观看| 久久热这里只有精品在线观看| 久久成人国产精品一区二区| 亚洲精品高清国产一线久久| 久久久久一级精品亚洲国产成人综合AV区 | 国产2021久久精品| 99蜜桃臀久久久欧美精品网站| 亚洲精品tv久久久久久久久久| 久久伊人精品青青草原高清| 精品无码久久久久国产动漫3d| 久久国产AVJUST麻豆| 亚洲一级Av无码毛片久久精品| 久久国产精品国语对白| 亚洲午夜久久久久久噜噜噜| 久久精品国产日本波多野结衣| 久久人与动人物a级毛片| 国产精品免费久久| 四虎国产精品免费久久久| 99热热久久这里只有精品68| 中文无码久久精品| 亚洲精品乱码久久久久久自慰| 久久精品国产亚洲AV麻豆网站 | 中文字幕无码久久人妻| A级毛片无码久久精品免费| 久久免费国产精品一区二区| 久久精品国产99国产精偷|