• <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記錄開發(fā)新知道

            如何安裝Minimal SYStem(MSYS)

            image

            image

            image

            image

            image

            image

            image

            image

            image

            image

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

            image 

            MSYS(Minimal GNU(POSIX)system on Windows)

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

            Cygwin(基于GPL licensed協(xié)議)

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

            MinGW(Minimalist GNU For Windows)

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

            它與Cygwin實(shí)現(xiàn)了相同的夢(mèng)想,也是為了實(shí)現(xiàn)在Windows上能夠運(yùn)行Unix上的工具。但與之不同的是它采用的是Windows C類庫(mscvrt)而不是Cygwin采用的GNU C運(yùn)行時(shí)類庫。同時(shí)也因?yàn)閮蓚€(gè)運(yùn)行時(shí)類庫的端口不同而導(dǎo)致兩者有諸多區(qū)別。但是卻因?yàn)椴捎昧酥苯又С諻indows環(huán)境的Windows C運(yùn)行時(shí)類庫,它也給CDT(C/C++ Development Toolkit)提供了最好的支持。同時(shí),它避免了像Cygwin使用了GPL協(xié)議。

            C/C++ Development Toolkit(CDT)

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

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

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

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

            fstab文件

            與fstab相同路徑下的有個(gè)fstab.sample文件,這是一個(gè)示例文件。您可以仿造它進(jìn)行一些設(shè)置。(如果您按照之前我們的安裝步驟,并且中途沒有出現(xiàn)偏差的話,那么通常您已經(jīng)正確設(shè)置了fstab文件,如果因?yàn)槠渌蚰枰薷脑撐募部梢詤⒖荚摬糠謨?nèi)容。)fstab文件將是dll初始化期間唯一被載入的文件。它的格式我們可以看到,是由一個(gè)物理路徑+“空格/TAB制表格”+Mount_Point來維持的。它實(shí)現(xiàn)了一個(gè)路徑映射的體系結(jié)構(gòu),以至于我們不必手動(dòng)地搬動(dòng)那些文件到正確的目錄,也能夠讓我們正確地訪問我們所需的文件。

            下圖為fstab.sample文件

            fstab.sample

            下面我們打開fstab看看系統(tǒng)之前為我們?cè)O(shè)置了什么:

            fstab

            從本例子中我們發(fā)現(xiàn)了系統(tǒng)為我們做好了這樣一個(gè)映射。將D:/gnu/mingw映射到了/mingw。

            MSYS只是一個(gè)模擬的平臺(tái),我們除了讓它跟MinGW實(shí)現(xiàn)互聯(lián)互通,我們也能夠讓它跟系統(tǒng)上的其他程序互聯(lián)互通。

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

            sh

            執(zhí)行的內(nèi)容相當(dāng)于運(yùn)行了下面的批處理語句。

            image 

            下面讓我們打開一個(gè)word程序。我們?cè)诿钚邢螺斎?

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

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

            我本機(jī)的路徑為

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

            我們很容易看出它們二者之間的區(qū)別。下面我就針對(duì)這些區(qū)別做一些簡(jiǎn)要的解釋。

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

            image

            復(fù)制粘帖

            說到使用這樣的命令行方式大家一定覺得還不是那么方便。因?yàn)檫@里不能夠復(fù)制粘貼。但你錯(cuò)了,這里復(fù)制粘貼也很容易。

            復(fù)制:選擇你要復(fù)制的部分,然后鼠標(biāo)點(diǎn)一下,就可以了。容易吧?

            粘帖:只需用shift+鼠標(biāo)左鍵,就可以直接將剪貼板內(nèi)的文字粘帖進(jìn)來了。

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

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

            評(píng)論

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

            不錯(cuò)不錯(cuò)
            有時(shí)候截圖重現(xiàn)也挺累的
              回復(fù)  更多評(píng)論   

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

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

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

            不錯(cuò),很實(shí)用的一篇文章.  回復(fù)  更多評(píng)論   


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            特殊功能
             
            久久强奷乱码老熟女| 伊人久久大香线蕉综合热线| 久久九九兔免费精品6| 中文字幕日本人妻久久久免费 | 人妻无码精品久久亚瑟影视| 亚洲日本va午夜中文字幕久久| 久久这里都是精品| 久久久久人妻精品一区| 久久久久久久久久久免费精品| 伊人久久精品无码av一区| www久久久天天com| 久久青青草原综合伊人| 久久精品日日躁夜夜躁欧美| 狠狠色丁香婷综合久久| 久久久国产视频| 国产精品美女久久久久av爽| 99久久精品免费看国产一区二区三区 | 欧美久久精品一级c片片| 国产精品99久久久久久宅男小说| 91精品国产综合久久精品| 久久精品综合网| 精品久久久久久无码人妻热| 久久精品国产亚洲AV无码麻豆| 亚洲欧美国产精品专区久久 | 国产精品免费看久久久香蕉| 久久婷婷国产综合精品| 久久婷婷色综合一区二区| 亚洲一区二区三区日本久久九| 久久久久高潮毛片免费全部播放| 亚洲国产小视频精品久久久三级| 狠狠色丁香久久婷婷综| 国产麻豆精品久久一二三| 久久一日本道色综合久久| 伊人色综合久久天天人手人婷| 久久久精品日本一区二区三区| 2021国产成人精品久久| 欧美亚洲另类久久综合| 91久久精品国产91性色也| 免费观看久久精彩视频| 国产成人精品综合久久久| 理论片午午伦夜理片久久|