cygwinhtml
192.168.1.102:3389python
Root Directory —— Cygwin環境根目錄
Local Package Directory —— 軟件包下載存放位置git
安裝的時候,python也要去掉,後續用apt-cyg安裝python2.7web
下載地址:http://cygwin.com
在Use URL處,輸入:http://mirrors.163.com/cygwin/sql
「Cygwin1.dll」文件的地址,就在「C\Cygwin\bin「裏
緣由是缺乏了一個「Cygwin1.dll」的環境變量,咱們只要把這個「Cygwin1.dll」的文件跟要執行的程序放在同一目錄便可。編程
咱們首先在列表中尋找Cygwin中國鏡像的地 址:http://www.cygwin.cn,若是找到就選中這個地址;若是找不到這個地址,就在下面手動輸入中國鏡像的地址:http: //www.cygwin.cn/pub/,再點擊「Add」,而後再在列表中選中vim
安裝cygwin中只須要注意兩點:segmentfault
1)、安裝文件的路徑中不能有中文名windows
2)、要選中cygwin支持NDK的幾個包(爲了避免遺漏把devel下的所有選中安裝ruby
測試cygwin是否安裝成功:
運行cygwin,在彈出的命令行窗口輸入:cygcheck -c cygwin命令,會打印出當前cygwin的版本和運行狀態,若是status是ok的話,則cygwin運行正常。
而後依次輸入gcc –version,g++ --version,make –version,gdb –version進行測試,若是都打印出版本信息和一些描述信息,很是高興的告訴你,你的cygwin安裝完成了
http://www.51testing.com/html/82/547282-854339.html
http://www.51testing.com/html/82/547282-854340.html
http://www.cnblogs.com/astwish/articles/3700459.html
http://www.cnblogs.com/clarkchen/archive/2011/02/21/1960217.html
http://www.cnblogs.com/starstroll/archive/2009/01/15/1376624.html
http://bbs.chinaunix.net/thread-3676471-1-1.html hbmhalley
http://www.cnblogs.com/zuroc/archive/2005/02/09/103469.html
http://blog.csdn.net/w405722907/article/details/77967718
http://blog.csdn.net/lionwoo/article/details/446964
http://blog.csdn.net/shenshouer/article/details/7244358
https://jingyan.baidu.com/article/08b6a591a5048b14a809220b.html
http://www.360doc.com/content/13/0123/09/9780582_261890818.shtml
http://www.cnblogs.com/YHM07/p/4116713.html
http://blog.sina.com.cn/s/blog_4dbe69550100e7an.html
https://segmentfault.com/a/1190000002789600
http://www.codeweblog.com/cygwin%E7%9A%84%E5%AE%89%E8%A3%85-%E9%85%8D%E7%BD%AE%E4%B8%8E%E8%B0%83%E6%95%B4/
http://blog.csdn.net/Mary_Jane/article/details/50769631
下載地址:http://cygwin.com
在Use URL處,輸入:http://mirrors.163.com/cygwin/
最新版本:2.9.0
下載地址:http://cygwin.com
在Use URL處,輸入:http://mirrors.163.com/cygwin/
安裝cygwin中只須要注意:
一、安裝文件的路徑中不能有中文名
二、測試cygwin是否安裝成功:運行cygwin terminal,輸入:cygcheck -c cygwin命令
會打印出當前cygwin的版本和運行狀態,若是status是ok的話,則cygwin運行正常。
安裝流程:從163鏡像源下載包,而後解壓安裝,跟Linux安裝流程相似
ps -W :查看windows的全部進程
mintty只有pty,沒有tty,只有虛擬終端,沒有本地終端
ncurses
ncurses(new curses)是一套編程庫,它提供了一系列的函數以便使用者調用它們去生成基於文本的用戶界面
下面這幾個軟件都曾經用過ncurses庫
vim
emacs
lynx
screen
ncurses貌似沒有提供Windows平臺的支持
http://www.codeweblog.com/cygwin%E7%9A%84%E5%AE%89%E8%A3%85-%E9%85%8D%E7%BD%AE%E4%B8%8E%E8%B0%83%E6%95%B4/
自動安裝腳本
安裝腳本
也可基於 command-line 進行安裝,好比寫個批處理文件放到安裝目錄中:
@echo off
echo Cygwin installer.
echo Copyright (c) 2014 Chen Zhiqiang. Released under the MIT license.
echo The script used to install cygwin in quiet mode. Maybe you should adjust this script first.
echo It's a good idea that set CYGWIN_ROOT and CYGWIN_CACHE before call this script.
::CYGWIN_ROOT: Cygwin will be installed to this path
if not defined CYGWIN_ROOT set CYGWIN_ROOT=%~dp0
if "%CYGWIN_ROOT:~-1%"=="\" set CYGWIN_ROOT=%CYGWIN_ROOT:~0,-1%
::CYGWIN_CACHE: Local package directory
if not defined CYGWIN_CACHE set CYGWIN_CACHE=%CYGWIN_ROOT%\packages
::CYGWIN_MIRROR: Download site
if not defined CYGWIN_MIRROR set CYGWIN_MIRROR=http://mirrors.kernel.org/sourceware/cygwin/
::CYGWIN_SETUP: Cygwin setup program
if defined CYGWIN_SETUP if exist %CYGWIN_SETUP% goto PRE
set CYGWIN_SETUP=
for %%i in (setup*.exe) do (
set CYGWIN_SETUP=%%~fi
)
if not defined CYGWIN_SETUP set /P CYGWIN_SETUP=Input the path of cygwin setup program:
:PRE
::CATEGORIES: Specify entire categories to install
set CATEGORIES=Base,Admin,System
::PACKAGES: Specify packages to install
::Audio packages
set PACKAGES=sox,sox-fmt-flac,sox-fmt-wavpack
::DB
set PACKAGES=%PACKAGES%,postgresql,postgresql-client
::Devel packages
set PACKAGES=%PACKAGES%,autobuild,autoconf,automake,binutils,make,cmake,gcc-g++,gdb
set PACKAGES=%PACKAGES%,mingw-gcc,mingw64-i686-gcc,mingw64-x86_64-gcc,clang,llvm
set PACKAGES=%PACKAGES%,gendef,git,git-svn,cvs2svn,bzr,cygport,cygwin64,doxygen,indent
set PACKAGES=%PACKAGES%,patch,pkg-config,swig,tcl,tcl-tk,gawk,lua,perl,python,ruby
::Graphics
set PACKAGES=%PACKAGES%,gnuplot,gd,ImageMagick,optipng,pngcrush,popper,popper-data,exif
::Net
set PACKAGES=%PACKAGES%,aria2,curl,openssh,rsync,wget,tftp,tftp-server
::Utils
set PACKAGES=%PACKAGES%,bzip2,cpio,genisoimage,gnupg,mkisofs,upx,vim,hexedit
::X11
set PACKAGES=%PACKAGES%,xorg-server,xinit,XtoW,xauth,xhost
echo Installing Cygwin using these settings: (Press CTRL+C to abord)
echo CYGWIN_ROOT=%CYGWIN_ROOT%
echo CYGWIN_CACHE=%CYGWIN_CACHE%
echo CYGWIN_MIRROR=%CYGWIN_MIRROR%
echo CATEGORIES=%CATEGORIES%
echo PACKAGES=%PACKAGES%
echo --
choice /T 8 /D Y /M "Confirm (continue after 8 seconds)"
if ERRORLEVEL 2 goto :EOF
if ERRORLEVEL 1 goto Install
goto :EOF
:Install
%CYGWIN_SETUP% -q -B -N -n -d ^
-R %CYGWIN_ROOT% ^
-l %CYGWIN_CACHE% ^
-s %CYGWIN_MIRROR% ^
-C %CATEGORIES% ^
-P %PACKAGES%
根據本身的狀況進行些調整,便可全自動安裝Cygwin了,如想進行一些交互,或者僅以普通用戶運行時遇到權限問題,應從命令參數中去掉 -q,這樣能夠在安裝過程當中進行交互和干涉。另外,若是用的是從 redhat.com 下載的安裝文件,那麼不須要加 -s 參數,由於 redhat.com 提供的那個安裝文件默認只有一個鏡像源,並且我在批處理中所用的那個鏡像源也不適用於它。
爲了便攜化的目的,在上面的批處理中我使用了 -N -n -d 這些參數,這使得Cygwin不會自動生成菜單和快捷方式。若是不考慮便攜,那麼應該將這幾個參數去掉
自動安裝程序
我寫了一個批處理文件 cyg-setup.bat,它能夠將命令行參數傳遞給 Cygwin 的 setup 程序,但它會自動補上 -R, -l, -s 參數。將這個批處理及 Cygwin 的 setup 程序一塊兒放到 Cygwin 的安裝目錄下,能夠在CMD裏這樣使用它:
:: 安裝軟件包
cyg-setup -q -P wget,ocaml-llvm,guile
::刪除軟件包
cyg-setup -q -x guile,tcl-tk
下面是這個批處理的源碼:
@echo off && goto main
:Info
echo cyg-setup - Cygwin setup wrapper.
echo Copyright (c) 2014 Chen Zhiqiang. Released under the MIT license.
echo Usage is same to the cygwin setup program, but it will try to resolve these options if they omited: -R, -l, -s.
echo -R, use %%CYGWIN_ROOT%%, or, use the directory path of this program.
echo -l, use %%CYGWIN_CACHE%%, or, use %%CYGWIN_ROOT%%\packages.
echo -s, use %%CYGWIN_MIRROR%%, or, pass a default mirror site to the setup.
echo And, you can use the "acl" option (%0 acl) to reset ACL.
goto :EOF
:main
set P= %*
::CYGWIN_ROOT: Cygwin will be installed to this path
if not defined CYGWIN_ROOT set CYGWIN_ROOT=%~dp0
if "%CYGWIN_ROOT:~-1%"=="\" set CYGWIN_ROOT=%CYGWIN_ROOT:~0,-1%
::CYGWIN_CACHE: Local package directory
if not defined CYGWIN_CACHE set CYGWIN_CACHE=%CYGWIN_ROOT%\packages
::CYGWIN_MIRROR: Download site
if not defined CYGWIN_MIRROR set CYGWIN_MIRROR=http://mirrors.kernel.org/sourceware/cygwin/
if /i "%1"=="info" goto Info
if /i "%1"=="acl" goto ACL
::CYGWIN_SETUP: Cygwin setup program
if defined CYGWIN_SETUP if exist %CYGWIN_SETUP% goto PRE
set CYGWIN_SETUP=
for %%i in (setup*.exe) do (
set CYGWIN_SETUP=%%~fi
)
if not defined CYGWIN_SETUP set /P CYGWIN_SETUP=Input the path of cygwin setup program:
:PRE
(echo %P% | findstr /C:" -R " >nul) || (echo %P% | findstr /C:" --root ">nul) || set P=%P% -R %CYGWIN_ROOT%
(echo %P% | findstr /C:" -l " >nul) || (echo %P% | findstr /C:" --local-package-dir " >nul) || set P=%P% -l %CYGWIN_CACHE%
(echo %P% | findstr /C:" -s " >nul) || (echo %P% | findstr /C:" --site " >nul) || set P=%P% -s %CYGWIN_MIRROR%
:Setup
%CYGWIN_SETUP% %P%
goto :EOF
:ACL
takeown /F %CYGWIN_ROOT% /A
icacls %CYGWIN_ROOT% /reset
takeown /F cygdrive /A
icacls cygdrive /reset
set CHOWN=%CYGWIN_ROOT%\bin\chown.exe
%CHOWN% Administrators:Administrators home
%CHOWN% -R Administrators:Administrators usr lib bin sbin etc var tmp dev
goto :EOF
這個腳本使用了幾個變量:
CYGWIN_ROOT,Cygwin的安裝目錄,默認值爲該腳本所在的目錄;CYGWIN_CACHE,Cygwin的軟件包下載路徑,默認值爲 %CYGWIN_ROOT%\packages;CYGWIN_MIRROR,Cygwin的安裝鏡像源,默認使用 mirrors.kernel.org。這三個變量均可以經過設置環境變量來改變它們的位置。