Installing MSYS-MinGW (安装MSYS和MinGW开发环境)
http://www.cccp-project.net/wiki/index.php?title=Installing_MSYS-MinGW
From CCCP
Jump to: navigation, search
Instructions for setting up Minimalist GNU for Windows along with Minimal SYStem.
Contents
[hide]- 1 Links for Downloads
- 2 Step 1 (MSYS Base System)
- 3 Step 1.5 (Update MSYS CORE)
- 4 Step 2 (Required Script Components)
- 5 Step 3 (The Script)
- 6 Optional Things
- 7 Further Notes
Links for Downloads
- MinGW-MSYS Sourceforge Page
- TMD's GCC Builds (older)
- GTK+ Windows Downloads Page (pkg-config and dependencies)
- NASM Win32 binaries
- YASM Win32 (for "normal" use)
- SVN Utils for Windows Download Page
- UnZip GnuWin32 Builds
- PolyglotMan GnuWin32 Builds
- UnRAR CLI for Windows
- WGET for Windows
- 7-Zip Command Line Version
Step 1 (MSYS Base System)
- Extract msysCORE-1.0.11-bin.tar.gz or Install MSYS-1.0.11.exe.
- If using tar.gz, delete the \postinstall directory. And would be preferable to extract to "C:\msys\1.0".
- If using installer, select No when asked to run post install script.
- Rename "etc\fstab.sample" to "etc\fstab". Edit the following lines so they point to the correct paths:
c:/mingw /mingw
Should be changed to something like
C:/msys/1.0/mingw /mingw
Step 1.5 (Update MSYS CORE)
- Extract msysCORE-1.0.14-1-msys-1.0.14-bin.tar.lzma to the root MSYS directory and replace all files. Something like:
C:\msys\1.0
- Delete the \postinstall directory.
- This can not be done while running MSYS. This update should not be necessary to run most MSYS components, and it really only updates 3 primary files: msys-1.0.dll, msysmnt.exe, ps.exe.
- To extract .tar.lzma you can use 7zip.
Step 2 (Required Script Components)
- Extract/Install the following packages to "msys\1.0\mingw\bin". The utilities must be placed directly in this path, not a subdirectory of it.
wget 1.11.4 7zip 4.65 CLI
Step 3 (The Script)
- Start msys.bat. You may notice it looks a bit different from past versions, besides just the colors. The MSYS devs decided to start using Windows' native terminal, cmd, for the MSYS environment for various development related reasons. This script will modify msys.bat to use rxvt by default. If you aren't programming and developing applications this should have no real effect on you. Just be aware you can switch between the two with the parameters --rxvt or --norxvt (or change the default behavior back).
- Download msys-mingw_setup.sh to your home directory by typing (or whatever method you choose):
wget http://www.cccp-project.net/nichorai/msys-mingw_setup.sh msys-mingw_setup.sh
- Next begin the script by typing:
./msys-mingw_setup.sh
The script will first download all the components with wget (which is approximately 82MB of packages). This will take awhile. After this a "hit any key" prompt will appear, this is the only prompt in the script. After you hit "any key" the components will be extracted, renamed, edited, patched, and installed as necessary.
- When the script is complete there are still two important steps you must manually perform.
- First: Assure the paths in /etc/fstab are correct to where you installed msys/mingw. The /etc/fstab file will be displayed as the second to last thing in the script. If the paths look correct you have nothing to do, otherwise correct them as necessary.
- Second: You will see instructions to copy some files from your Windows TEMP directory to the "msys\1.0" directory. If you type:
echo $TEMP
You can find the TEMP directory on your machine, capitalization of this variable is important. There should be two dirs to copy: /bin and /share. This will be for updating BASH, which is in use so long as MSYS is running. So you must first exit the shell and then copy the files manually. You will need to exit the shell for the other modifications to take place as well anyways.
- YOU ARE DONE! n_n
List of Components Downloaded in Script
MinGW x86 Required Components
- binutils-2.20.1-2-mingw32
- mingwrt-3.18-mingw32
- w32api-3.14-mingw32
- make-3.81-20090914-mingw32
- gcc-4.4.1-tdm-2-core (SJLJ)
- gcc-4.4.1-tdm-2-g++ (SJLJ)
MSYS DTK
- MSYS coreutils-5.97-2
- MSYS cvs-1.12.13-1
- MSYS guile-1.8.7-1
- MSYS inetutils-1.5-1
- MSYS openssh-4.7p1-2
- MSYS openssl-0.9.8k-1
- MSYS perl-5.6.1_2-1
- MSYS autogen-5.9.2-2
- MinGW autoconf-7-1
- MinGW autoconf2.1-2.13-4
- MinGW autoconf2.5-2.64-1
- MinGW automake-4-1
- MinGW automake1.11-1.11-1
- MinGW libtool-2.2.7a-1
Updated Components
- MSYS bash-3.1.17-2
- MSYS bzip2-1.0.5-1
- MSYS cygutils-1.3.4-3
- MSYS diffutils-2.8.7.20071206cvs-2
- MSYS file-5.03-1
- MSYS findutils-4.4.2-1
- MSYS gawk-3.1.7-1
- MSYS gettext-0.17-1
- MSYS gmp-4.3.1-1
- MSYS grep-2.5.4-1
- MSYS groff-1.20.1-1
- MSYS gzip-1.3.12-1
- MSYS less-436-1
- MSYS libarchive-2.7.1-1
- MSYS libiconv-1.13.1-1
- MSYS lndir-1.0.1-1
- MSYS m4-1.4.13-1
- MSYS make-3.81-2
- MSYS man-1.6f-1
- MSYS mktemp-1.6-1
- MSYS patch-2.5.9-1
- MSYS popt-1.15-1
- MSYS regex-1.20090805-1
- MSYS sed-4.2.1-1
- MSYS tar-1.22
- MSYS termcap-0.20050421_1-1
- MSYS texinfo-4.13a-1
- MSYS vim-7.2-1
- MSYS xz-4.999.9beta_20091209-1
- MSYS zlib-1.2.3-1
- MinGW gettext-0.17-1
- MinGW libiconv-1.13.1-1
Dependency DLLs
- MSYS bison-2.4.1-1
- MSYS crypt-1.1_1-2
- MSYS gdbm-1.8.3-2
- MSYS libtool-2.2.7a-1
- MSYS minires-1.02_1-1
- MinGW gcc-core-4.4.0-mingw32-dll (dw2-1)
Installed to MinGW
- dx7headers
- glib_2.24.0-2
- nasm-2.08.01
- pkg-config_0.23-3
- polyglotman-3.2
- svn-win32-1.6.6
- unrarw32-3.91
- unzip-5.51-1
- yasm-1.0.0
Patches
- mingwrt-3.18-mingw32_file64.diff (largefile support)
Not Chosen
Some of these may have their binary DLL counterparts installed (because of dependencies from other tools), but their -bin and other packages were not installed.
- GNU Source-Level Debugger (developer tool)
- MSYS bison (language parsing tool)
- MSYS crypt (cryptographic tool)
- MSYS flex (scanner/lexical tool)
- MSYS gdbm (database manager)
- MSYS lpr-enhanced (printer command)
- MSYS minires (stub resolver)
- MSYS rxvt (initiallly tested and had some segfaults with all kinds of weird win32 video corruption in _other windows_, rxvt-2.7.10.20050409-1)
- MinGW catgets (C library functions?)
- MinGW gendef (developer tool)
- MinGW expat (XML parser)
- MinGW pexports (developer tool)
Optional Things
- msysgit (you will need to manually move the files, merging their msys with yours will be BAD).
Further Notes
Updates
- 2010-04-30: Updated glib_2.24.0-2, yasm-1.0.0_win32.
- 2010-03-31: Updated msysCORE-1.0.14-1, mingwrt-3.18-mingw32, binutils-2.20.1-2-mingw32, xz-4.999.9beta_20091209-1-msys, glib_2.22.5-1_win32, nasm-2.08.01-win32, unrarw32-3.9.1, Git-1.7.0.2-preview20100309. Also a fix for msys.bat (with msvc inclusion) on x64 Windows.
- 2009-12-04: Updated to mingwrt-3.17
- 2009-12-03: Huge update from all the mingw naming changes and separation of packages (ohlol this is fun)
Fully premade MinGW+MSYS environment (with git) which use the instructions above. Remember to modify the mount paths in /etc/fstab if you do not extract directly to the C:\ drive.
msys.premade.2010.04.30.7z msys.premade.2010.04.02.7z msys.premade.2009.12.04.7z
If any of the above seems incorrect, edit the wiki. Or harass me. This guide should work perfectly if the exact versions mentioned are used, I've done it many times compiling mplayer with dependencies (which is alot of stuff).