forked from aniani/vim
patch 8.1.0128: building with MinGW does not work out-of-the-box
Problem: Building with MinGW does not work out-of-the-box. Solution: Add instructions for MSYS2. Set default WINVER. Add batch files to set $PATH for MSYS2.
This commit is contained in:
parent
7c365fb190
commit
304925e750
2
Filelist
2
Filelist
@ -412,6 +412,8 @@ SRC_DOS = \
|
||||
src/msvc2008.bat \
|
||||
src/msvc2010.bat \
|
||||
src/msvc2015.bat \
|
||||
src/msys32.bat \
|
||||
src/msys64.bat \
|
||||
src/dimm.idl \
|
||||
src/dlldata.c \
|
||||
src/dosinst.c \
|
||||
|
@ -22,23 +22,24 @@ any faster, but you can edit files larger than 2 Gbyte.
|
||||
|
||||
Contents:
|
||||
1. Microsoft Visual C++
|
||||
2. Using MinGW
|
||||
3. Cygwin
|
||||
4. Borland
|
||||
5. Cross compiling for Win32 from a Linux machine
|
||||
6. Building with Python support
|
||||
7. Building with Python3 support
|
||||
8. Building with Racket or MzScheme support
|
||||
9. Building with Lua support
|
||||
10. Building with Perl support
|
||||
11. Building with Ruby support
|
||||
12. Building with Tcl support
|
||||
13. Building with Terminal support
|
||||
14. Building with DirectX (DirectWrite) support
|
||||
15. Windows 3.1
|
||||
16. MS-DOS
|
||||
2. Using MSYS2 with MinGW
|
||||
3. Using MinGW
|
||||
4. Cygwin
|
||||
5. Borland
|
||||
6. Cross compiling for Win32 from a Linux machine
|
||||
7. Building with Python support
|
||||
8. Building with Python3 support
|
||||
9. Building with Racket or MzScheme support
|
||||
10. Building with Lua support
|
||||
11. Building with Perl support
|
||||
12. Building with Ruby support
|
||||
13. Building with Tcl support
|
||||
14. Building with Terminal support
|
||||
15. Building with DirectX (DirectWrite) support
|
||||
16. Windows 3.1
|
||||
17. MS-DOS
|
||||
|
||||
17. Installing after building from sources
|
||||
18. Installing after building from sources
|
||||
|
||||
|
||||
The currently recommended way (that means it has been verified to work) is
|
||||
@ -261,8 +262,87 @@ Instructions for integrating the Platform SDK into VC Express:
|
||||
http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/default.aspx
|
||||
|
||||
|
||||
2. MSYS2 with MinGW
|
||||
===================
|
||||
|
||||
2. MinGW
|
||||
2.1. Setup the basic msys2 environment
|
||||
|
||||
Go to the official page of MSYS2: https://www.msys2.org
|
||||
Download an installer:
|
||||
|
||||
* msys2-x86_64-YYYYMMDD.exe for 64-bit Windows
|
||||
(Even if you want to build 32-bit Vim)
|
||||
* msys2-i686-YYYYMMDD.exe for 32-bit Windows
|
||||
|
||||
Execute the installer and follow the instructions to update basic packages.
|
||||
At the end keep the checkbox checked to run msys2 now. If needed, you can
|
||||
open the window from the start menu, MSYS2 64 bit / MSYS2 MSYS
|
||||
|
||||
Execute:
|
||||
$ pacman -Syu
|
||||
|
||||
And restart MSYS2 window (select "MSYS2 MSYS" icon from the Start Menu).
|
||||
Then execute:
|
||||
$ pacman -Su
|
||||
|
||||
If pacman complains that `catgets` and `libcatgets` conflict with another
|
||||
package, select `y` to remove them.
|
||||
|
||||
|
||||
2.2. Install additional packages for building Vim
|
||||
|
||||
The following package groups are required for building Vim:
|
||||
|
||||
* base-devel
|
||||
* mingw-w64-i686-toolchain (for building 32-bit Vim)
|
||||
* mingw-w64-x86_64-toolchain (for building 64-bit Vim)
|
||||
|
||||
Use the following command to install them:
|
||||
|
||||
$ pacman -S base-devel mingw-w64-i686-toolchain mingw-w64-x86_64-toolchain
|
||||
|
||||
Or you can use the `pacboy` command to avoid long package names:
|
||||
|
||||
$ pacboy -S base-devel: toolchain:m
|
||||
|
||||
(See `pacboy help` for the help.)
|
||||
|
||||
|
||||
2.3. Keep the build environment up-to-date
|
||||
|
||||
After you have installed the build environment, you may want to keep it
|
||||
up-to-date (E.g. always use the latest GCC).
|
||||
In that case, you just need to execute the command:
|
||||
$ pacman -Syu
|
||||
|
||||
|
||||
# Build Vim
|
||||
|
||||
Select one of the following icon from the Start Menu:
|
||||
|
||||
* MSYS2 MinGW 32-bit (To build 32-bit versions of Vim)
|
||||
* MSYS2 MinGW 64-bit (To build 64-bit versions of Vim)
|
||||
|
||||
Go to the source directory of Vim, then execute the make command. E.g.:
|
||||
|
||||
make -f Make_ming.mak
|
||||
make -f Make_ming.mak GUI=no
|
||||
make -f Make_ming.mak GUI=no DEBUG=yes
|
||||
|
||||
NOTE: you can't execute the vim.exe in the MSYS console, open a normal Windows
|
||||
console for that. You need to set $PATH to be able to build there, e.g.:
|
||||
|
||||
set PATH=c:\msys64\mingw32\bin;c:\msys64\usr\bin;%PATH%
|
||||
|
||||
This command is in msys32.bat. Or or the 64 bit compiler use msys64.bat:
|
||||
|
||||
set PATH=c:\msys64\mingw64\bin;c:\msys64\usr\bin;%PATH%
|
||||
|
||||
If you have msys64 in another location you will need to adjust the paths for
|
||||
that.
|
||||
|
||||
|
||||
3. MinGW
|
||||
========
|
||||
|
||||
(written by Ron Aaron: <ronaharon@yahoo.com>)
|
||||
@ -344,7 +424,7 @@ If you want National Language Support, read the file src/po/README_mingw.txt.
|
||||
You need to uncomment lines in Make_ming.mak to have NLS defined.
|
||||
|
||||
|
||||
3. Cygwin
|
||||
4. Cygwin
|
||||
=========
|
||||
|
||||
Use Make_cyg.mak with Cygwin's GCC. See
|
||||
@ -356,14 +436,14 @@ running on Unix), while with Make_cyg.mak you get a Windows application (like
|
||||
with the other makefiles).
|
||||
|
||||
|
||||
4. Borland
|
||||
5. Borland
|
||||
===========
|
||||
|
||||
Use Make_bc5.mak with Borland C++ 5.x. See
|
||||
http://users.skynet.be/antoine.mechelynck/vim/compile.htm
|
||||
|
||||
|
||||
5. Cross compiling for Win32 from a Linux machine
|
||||
6. Cross compiling for Win32 from a Linux machine
|
||||
=================================================
|
||||
|
||||
[Update of 1) needs to be verified]
|
||||
@ -383,7 +463,7 @@ your Linux (or other unix) box. To do this, you need to follow a few steps:
|
||||
Now you have created the Windows binary from your Linux box! Have fun...
|
||||
|
||||
|
||||
6. Building with Python support
|
||||
7. Building with Python support
|
||||
===============================
|
||||
|
||||
For building with MSVC 2008 the "Windows Installer" from www.python.org
|
||||
@ -435,7 +515,7 @@ And if you use msys2 to build python support (as one line):
|
||||
You will end up with a Python-enabled, Win32 version. Enjoy!
|
||||
|
||||
|
||||
7. Building with Python3 support
|
||||
8. Building with Python3 support
|
||||
================================
|
||||
|
||||
For building with MSVC 2008 the "Windows Installer" from www.python.org
|
||||
@ -466,7 +546,7 @@ When using msys2 and link with Python3 bundled with msys2 (as one line):
|
||||
(This is for 64-bit builds. For 32-bit builds, replace mingw64 with mingw32.)
|
||||
|
||||
|
||||
8. Building with Racket or MzScheme support
|
||||
9. Building with Racket or MzScheme support
|
||||
========================================
|
||||
|
||||
1) Building with Racket support (newest)
|
||||
@ -556,7 +636,7 @@ After a successful build, these dlls can be freely removed, leaving them in
|
||||
|
||||
|
||||
|
||||
9. Building with Lua support
|
||||
10. Building with Lua support
|
||||
============================
|
||||
|
||||
Vim with Lua support can be built with either MSVC or MinGW (or maybe Cygwin).
|
||||
@ -611,7 +691,7 @@ Or when using Cygwin (as one line) (untested):
|
||||
LUA=/cygdrive/c/projects/lua53 DYNAMIC_LUA=yes LUA_VER=53
|
||||
|
||||
|
||||
10. Building with Perl support
|
||||
11. Building with Perl support
|
||||
==============================
|
||||
|
||||
Vim with Perl support can be built with either MSVC or MinGW (or Cygwin).
|
||||
@ -637,7 +717,7 @@ Or when using MinGW (as one line):
|
||||
PERL=C:/Perl DYNAMIC_PERL=yes PERL_VER=522
|
||||
|
||||
|
||||
11. Building with Ruby support
|
||||
12. Building with Ruby support
|
||||
==============================
|
||||
|
||||
Vim with Ruby support can be built with either MSVC or MinGW (or Cygwin).
|
||||
@ -745,7 +825,7 @@ Ruby 2.1 or later. (Default is 0x501.)
|
||||
|
||||
|
||||
|
||||
12. Building with Tcl support
|
||||
13. Building with Tcl support
|
||||
=============================
|
||||
|
||||
Vim with Tcl support can be built with either MSVC or MinGW (or Cygwin).
|
||||
@ -777,7 +857,7 @@ Or when using MinGW (as one line):
|
||||
TCL=C:/Tcl86 DYNAMIC_TCL=yes TCL_VER=86 TCL_VER_LONG=8.6
|
||||
|
||||
|
||||
13. Building with Terminal support
|
||||
14. Building with Terminal support
|
||||
==================================
|
||||
|
||||
Vim with Terminal support can be built with either MSVC, MinGW or Cygwin.
|
||||
@ -793,7 +873,7 @@ Or when using MinGW:
|
||||
mingw32-make -f Make_ming.mak TERMINAL=yes
|
||||
|
||||
|
||||
14. Building with DirectX (DirectWrite) support
|
||||
15. Building with DirectX (DirectWrite) support
|
||||
===============================================
|
||||
|
||||
Vim with DirectX (DirectWrite) support can be built with either MSVC or MinGW.
|
||||
@ -827,20 +907,20 @@ Just set DIRECTX to yes:
|
||||
mingw32-make -f Make_ming.mak DIRECTX=yes
|
||||
|
||||
|
||||
15. Windows 3.1x
|
||||
16. Windows 3.1x
|
||||
================
|
||||
|
||||
The Windows 3.1x support was removed in patch 7.4.1364.
|
||||
|
||||
|
||||
16. MS-DOS
|
||||
17. MS-DOS
|
||||
==========
|
||||
|
||||
The MS-DOS support was removed in patch 7.4.1399. Only very old Vim versions
|
||||
work on MS-DOS because of the limited amount of memory available.
|
||||
|
||||
|
||||
17. Installing after building from sources
|
||||
18. Installing after building from sources
|
||||
==========================================
|
||||
|
||||
[provided by Michael Soyka, updated by Ken Takata]
|
||||
|
@ -75,9 +75,10 @@ POSTSCRIPT=no
|
||||
# Set to yes to enable OLE support.
|
||||
OLE=no
|
||||
|
||||
# Set the default $(WINVER) to make it work with WinXP.
|
||||
# Set the default $(WINVER). Use 0x0501 to make it work with WinXP.
|
||||
ifndef WINVER
|
||||
WINVER = 0x0501
|
||||
# WINVER = 0x0501
|
||||
WINVER = 0x0600
|
||||
endif
|
||||
|
||||
# Set to yes to enable Cscope support.
|
||||
|
6
src/msys32.bat
Executable file
6
src/msys32.bat
Executable file
@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
rem To be used on MS-Windows for Msys2 with the 32 bit MinGW compiler.
|
||||
rem Adjust the "c:\msys64" part to match your installation.
|
||||
@echo on
|
||||
|
||||
set PATH=c:\msys64\mingw32\bin;c:\msys64\usr\bin;%PATH%
|
6
src/msys64.bat
Executable file
6
src/msys64.bat
Executable file
@ -0,0 +1,6 @@
|
||||
@echo off
|
||||
rem To be used on MS-Windows for Msys2 with the 64 bit MinGW compiler.
|
||||
rem Adjust the "c:\msys64" part to match your installation.
|
||||
@echo on
|
||||
|
||||
set PATH=c:\msys64\mingw64\bin;c:\msys64\usr\bin;%PATH%
|
Loading…
x
Reference in New Issue
Block a user