зеркало из https://github.com/github/ruby.git
[DOC] Merge README.win32 to doc/windows.md
This commit is contained in:
Родитель
0a82bfe5e1
Коммит
f499c81b01
181
doc/windows.md
181
doc/windows.md
|
@ -1,8 +1,18 @@
|
|||
# Windows
|
||||
|
||||
## Building Ruby
|
||||
Ruby supports a few native build platforms for Windows.
|
||||
|
||||
The easiest build environment is just a standard [RubyInstaller-Devkit installation](https://rubyinstaller.org/) and [git-for-windows](https://gitforwindows.org/). You might like to use [VSCode](https://code.visualstudio.com/) as an editor.
|
||||
* mswin: Build using Microsoft Visual C++ compiler
|
||||
* mingw-msvcrt: Build using compiler for Mingw with msvcrtXX.dll
|
||||
* mingw-ucrt: Build using compiler for Mingw with vcruntime.dll
|
||||
|
||||
## Building Ruby using Mingw with UCRT
|
||||
|
||||
The easiest build environment is just a standard [RubyInstaller-Devkit]
|
||||
installation and [git-for-windows]. You might like to use [VSCode] as an
|
||||
editor.
|
||||
|
||||
### Build examples
|
||||
|
||||
Ruby core development can be done either in Windows `cmd` like:
|
||||
|
||||
|
@ -40,3 +50,170 @@ cd ruby
|
|||
./configure -C --disable-install-doc
|
||||
make
|
||||
```
|
||||
|
||||
[RubyInstaller-Devkit]: https://rubyinstaller.org/
|
||||
[git-for-windows]: https://gitforwindows.org/
|
||||
[VSCode]: https://code.visualstudio.com/
|
||||
|
||||
## Building Ruby using Visual C++
|
||||
|
||||
### Requirement
|
||||
|
||||
1. Windows 7 or later.
|
||||
|
||||
2. Visual C++ 12.0 (2013) or later.
|
||||
|
||||
**Note** if you want to build x64 version, use native compiler for
|
||||
x64.
|
||||
|
||||
3. Please set environment variable `INCLUDE`, `LIB`, `PATH`
|
||||
to run required commands properly from the command line.
|
||||
|
||||
**Note** building ruby requires following commands.
|
||||
|
||||
* nmake
|
||||
* cl
|
||||
* ml
|
||||
* lib
|
||||
* dumpbin
|
||||
|
||||
4. If you want to build from GIT source, following commands are required.
|
||||
* bison
|
||||
* patch
|
||||
* sed
|
||||
* ruby 2.0 or later
|
||||
|
||||
5. Enable Command Extension of your command line. It's the default behavior
|
||||
of `cmd.exe`. If you want to enable it explicitly, run `cmd.exe` with
|
||||
`/E:ON` option.
|
||||
|
||||
### How to compile and install
|
||||
|
||||
1. Execute `win32\configure.bat` on your build directory.
|
||||
You can specify the target platform as an argument.
|
||||
For example, run `configure --target=i686-mswin32`
|
||||
You can also specify the install directory.
|
||||
For example, run `configure --prefix=<install_directory>`
|
||||
Default of the install directory is `/usr` .
|
||||
The default _PLATFORM_ is `i386-mswin32_`_MSRTVERSION_ on 32-bit
|
||||
platforms, or `x64-mswin64_`_MSRTVERSION_ on x64 platforms.
|
||||
_MSRTVERSION_ is the 2- or 3-digits version of the Microsoft
|
||||
Runtime Library.
|
||||
|
||||
2. Change _RUBY_INSTALL_NAME_ and _RUBY_SO_NAME_ in `Makefile`
|
||||
if you want to change the name of the executable files.
|
||||
And add _RUBYW_INSTALL_NAME_ to change the name of the
|
||||
executable without console window if also you want.
|
||||
|
||||
3. Run `nmake up` if you are building from GIT source.
|
||||
|
||||
4. Run `nmake`
|
||||
|
||||
5. Run `nmake check`
|
||||
|
||||
6. Run `nmake install`
|
||||
|
||||
### Build examples
|
||||
|
||||
* Build on the ruby source directory.
|
||||
|
||||
```
|
||||
ruby source directory: C:\ruby
|
||||
build directory: C:\ruby
|
||||
install directory: C:\usr\local
|
||||
```
|
||||
|
||||
```
|
||||
C:
|
||||
cd \ruby
|
||||
win32\configure --prefix=/usr/local
|
||||
nmake
|
||||
nmake check
|
||||
nmake install
|
||||
```
|
||||
|
||||
* Build on the relative directory from the ruby source directory.
|
||||
|
||||
```
|
||||
ruby source directory: C:\ruby
|
||||
build directory: C:\ruby\mswin32
|
||||
install directory: C:\usr\local
|
||||
```
|
||||
|
||||
```
|
||||
C:
|
||||
cd \ruby
|
||||
mkdir mswin32
|
||||
cd mswin32
|
||||
..\win32\configure --prefix=/usr/local
|
||||
nmake
|
||||
nmake check
|
||||
nmake install
|
||||
```
|
||||
|
||||
* Build on the different drive.
|
||||
|
||||
```
|
||||
ruby source directory: C:\src\ruby
|
||||
build directory: D:\build\ruby
|
||||
install directory: C:\usr\local
|
||||
```
|
||||
|
||||
```
|
||||
D:
|
||||
cd D:\build\ruby
|
||||
C:\src\ruby\win32\configure --prefix=/usr/local
|
||||
nmake
|
||||
nmake check
|
||||
nmake install DESTDIR=C:
|
||||
```
|
||||
|
||||
* Build x64 version (requires native x64 VC++ compiler)
|
||||
|
||||
```
|
||||
ruby source directory: C:\ruby
|
||||
build directory: C:\ruby
|
||||
install directory: C:\usr\local
|
||||
```
|
||||
|
||||
```
|
||||
C:
|
||||
cd \ruby
|
||||
win32\configure --prefix=/usr/local --target=x64-mswin64
|
||||
nmake
|
||||
nmake check
|
||||
nmake install
|
||||
```
|
||||
|
||||
### Bugs
|
||||
|
||||
You can **NOT** use a path name that contains any white space characters
|
||||
as the ruby source directory, this restriction comes from the behavior
|
||||
of `!INCLUDE` directives of `NMAKE`.
|
||||
|
||||
You can build ruby in any directory including the source directory,
|
||||
except `win32` directory in the source directory.
|
||||
This is restriction originating in the path search method of `NMAKE`.
|
||||
|
||||
## Icons
|
||||
|
||||
Any icon files(`*.ico`) in the build directory, directories specified with
|
||||
_icondirs_ make variable and `win32` directory under the ruby
|
||||
source directory will be included in DLL or executable files, according
|
||||
to their base names.
|
||||
$(RUBY_INSTALL_NAME).ico or ruby.ico --> $(RUBY_INSTALL_NAME).exe
|
||||
$(RUBYW_INSTALL_NAME).ico or rubyw.ico --> $(RUBYW_INSTALL_NAME).exe
|
||||
the others --> $(RUBY_SO_NAME).dll
|
||||
|
||||
Although no icons are distributed with the ruby source, you can use
|
||||
anything you like. You will be able to find many images by search engines.
|
||||
For example, followings are made from [Ruby logo kit]:
|
||||
|
||||
* Small [favicon] in the official site
|
||||
|
||||
* [vit-ruby.ico] or [icon itself]
|
||||
|
||||
[Ruby logo kit]: https://cache.ruby-lang.org/pub/misc/logo/ruby-logo-kit.zip
|
||||
[favicon]: https://www.ruby-lang.org/favicon.ico
|
||||
[vit-ruby.ico]: http://ruby.morphball.net/vit-ruby-ico_en.html
|
||||
[icon itself]: http://ruby.morphball.net/icon/vit-ruby.ico
|
||||
|
|
|
@ -1,149 +0,0 @@
|
|||
# -*- rdoc -*-
|
||||
|
||||
= How to build ruby using Visual C++
|
||||
|
||||
== Requirement
|
||||
|
||||
1. Windows 7 or later.
|
||||
|
||||
2. Visual C++ 12.0 (2013) or later.
|
||||
|
||||
[Note] if you want to build x64 version, use native compiler for
|
||||
x64.
|
||||
|
||||
3. Please set environment variable +INCLUDE+, +LIB+, +PATH+
|
||||
to run required commands properly from the command line.
|
||||
|
||||
[Note] building ruby requires following commands.
|
||||
* nmake
|
||||
* cl
|
||||
* ml
|
||||
* lib
|
||||
* dumpbin
|
||||
|
||||
4. If you want to build from GIT source, following commands are required.
|
||||
* bison
|
||||
* patch
|
||||
* sed
|
||||
* ruby 2.0 or later
|
||||
|
||||
5. Enable Command Extension of your command line. It's the default behavior
|
||||
of +cmd.exe+. If you want to enable it explicitly, run +cmd.exe+ with
|
||||
<tt>/E:ON</tt> option.
|
||||
|
||||
== How to compile and install
|
||||
|
||||
1. Execute <tt>win32\configure.bat</tt> on your build directory.
|
||||
You can specify the target platform as an argument.
|
||||
For example, run `<tt>configure --target=i686-mswin32</tt>'
|
||||
You can also specify the install directory.
|
||||
For example, run `<tt>configure --prefix=<install_directory></tt>'
|
||||
Default of the install directory is <tt>/usr</tt> .
|
||||
The default _PLATFORM_ is `+i386-mswin32_+_MSRTVERSION_' on 32-bit
|
||||
platforms, or `+x64-mswin64_+_MSRTVERSION_' on x64 platforms.
|
||||
_MSRTVERSION_ is the 2- or 3-digits version of the Microsoft
|
||||
Runtime Library.
|
||||
|
||||
2. Change _RUBY_INSTALL_NAME_ and _RUBY_SO_NAME_ in +Makefile+
|
||||
if you want to change the name of the executable files.
|
||||
And add _RUBYW_INSTALL_NAME_ to change the name of the
|
||||
executable without console window if also you want.
|
||||
|
||||
3. Run `<tt>nmake up</tt>' if you are building from GIT source.
|
||||
|
||||
4. Run `<tt>nmake</tt>'
|
||||
|
||||
5. Run `<tt>nmake check</tt>'
|
||||
|
||||
6. Run `<tt>nmake install</tt>'
|
||||
|
||||
== Icons
|
||||
|
||||
Any icon files(*.ico) in the build directory, directories specified with
|
||||
_icondirs_ make variable and +win32+ directory under the ruby
|
||||
source directory will be included in DLL or executable files, according
|
||||
to their base names.
|
||||
$(RUBY_INSTALL_NAME).ico or ruby.ico --> $(RUBY_INSTALL_NAME).exe
|
||||
$(RUBYW_INSTALL_NAME).ico or rubyw.ico --> $(RUBYW_INSTALL_NAME).exe
|
||||
the others --> $(RUBY_SO_NAME).dll
|
||||
|
||||
Although no icons are distributed with the ruby source, you can use
|
||||
anything you like. You will be able to find many images by search engines.
|
||||
For example, followings are made from {Ruby logo
|
||||
kit}[https://cache.ruby-lang.org/pub/misc/logo/ruby-logo-kit.zip]:
|
||||
|
||||
* Small {favicon}[https://www.ruby-lang.org/favicon.ico] in the official
|
||||
site
|
||||
|
||||
* http://ruby.morphball.net/vit-ruby-ico_en.html or
|
||||
{icon itself}[http://ruby.morphball.net/icon/vit-ruby.ico]
|
||||
|
||||
== Build examples
|
||||
|
||||
* Build on the ruby source directory.
|
||||
|
||||
ex.)
|
||||
ruby source directory: C:\ruby
|
||||
build directory: C:\ruby
|
||||
install directory: C:\usr\local
|
||||
|
||||
C:
|
||||
cd \ruby
|
||||
win32\configure --prefix=/usr/local
|
||||
nmake
|
||||
nmake check
|
||||
nmake install
|
||||
|
||||
* Build on the relative directory from the ruby source directory.
|
||||
|
||||
ex.)
|
||||
ruby source directory: C:\ruby
|
||||
build directory: C:\ruby\mswin32
|
||||
install directory: C:\usr\local
|
||||
|
||||
C:
|
||||
cd \ruby
|
||||
mkdir mswin32
|
||||
cd mswin32
|
||||
..\win32\configure --prefix=/usr/local
|
||||
nmake
|
||||
nmake check
|
||||
nmake install
|
||||
|
||||
* Build on the different drive.
|
||||
|
||||
ex.)
|
||||
ruby source directory: C:\src\ruby
|
||||
build directory: D:\build\ruby
|
||||
install directory: C:\usr\local
|
||||
|
||||
D:
|
||||
cd D:\build\ruby
|
||||
C:\src\ruby\win32\configure --prefix=/usr/local
|
||||
nmake
|
||||
nmake check
|
||||
nmake install DESTDIR=C:
|
||||
|
||||
* Build x64 version (requires native x64 VC++ compiler)
|
||||
|
||||
ex.)
|
||||
ruby source directory: C:\ruby
|
||||
build directory: C:\ruby
|
||||
install directory: C:\usr\local
|
||||
|
||||
C:
|
||||
cd \ruby
|
||||
win32\configure --prefix=/usr/local --target=x64-mswin64
|
||||
nmake
|
||||
nmake check
|
||||
nmake install
|
||||
|
||||
== Bugs
|
||||
|
||||
You can *NOT* use a path name that contains any white space characters as
|
||||
the ruby source directory, this restriction comes from the behavior of
|
||||
<code>!INCLUDE</code> directives of +NMAKE+.
|
||||
|
||||
You can build ruby in any directory including the source directory,
|
||||
except +win32+ directory in the source directory.
|
||||
This is restriction originating in the path search method of +NMAKE+.
|
Загрузка…
Ссылка в новой задаче