comparison src/INSTALLpc.txt @ 15408:cd1b393ddb5f v8.1.0712

patch 8.1.0712: MS-Windows build instructions are a bit outdated commit https://github.com/vim/vim/commit/ba7e1865b3e01b9e502d335345d713743797a339 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Jan 9 23:02:43 2019 +0100 patch 8.1.0712: MS-Windows build instructions are a bit outdated Problem: MS-Windows build instructions are a bit outdated. Solution: Update the instructions. (Ken Takata)
author Bram Moolenaar <Bram@vim.org>
date Wed, 09 Jan 2019 23:15:06 +0100
parents 8eb8200a55b2
children 081522b02c2d
comparison
equal deleted inserted replaced
15407:d6076c46818f 15408:cd1b393ddb5f
494 E.g. When using MSVC (as one line): 494 E.g. When using MSVC (as one line):
495 495
496 nmake -f Make_mvc.mak 496 nmake -f Make_mvc.mak
497 PYTHON=C:\Python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 497 PYTHON=C:\Python27 DYNAMIC_PYTHON=yes PYTHON_VER=27
498 498
499 (rest written by Ron Aaron: <ronaharon@yahoo.com>) 499 When using MinGW and link with the official Python (as one line):
500 500
501 Building with the mingw32 compiler, and the ActiveState ActivePython: 501 mingw32-make -f Make_ming.mak
502 http://www.ActiveState.com/Products/ActivePython/ 502 PYTHON=C:/Python27 DYNAMIC_PYTHON=yes PYTHON_VER=27
503 503
504 After installing the ActivePython, you will have to create a 'mingw32' 504 When using msys2 and link with Python2 bundled with msys2 (as one line):
505 'libpython20.a' to link with:
506 cd $PYTHON/libs
507 pexports python20.dll > python20.def
508 dlltool -d python20.def -l libpython20.a
509
510 Once that is done, edit the 'Make_ming.mak' so the PYTHON variable points to
511 the root of the Python installation (C:\Python20, for example). If you are
512 cross-compiling on Linux with the mingw32 setup, you need to also convert all
513 the 'Include' files to *unix* line-endings. This bash command will do it
514 easily:
515 for fil in *.h ; do vim -e -c 'set ff=unix|w|q' $fil
516
517 Now just do:
518 make -f Make_ming.mak gvim.exe
519
520 And if you use msys2 to build python support (as one line):
521 505
522 mingw32-make -f Make_ming.mak PYTHON=c:/msys64/mingw64 506 mingw32-make -f Make_ming.mak PYTHON=c:/msys64/mingw64
523 PYTHON_HOME=c:/msys64/mingw64 507 PYTHON_HOME=c:/msys64/mingw64
524 PYTHONINC=-Ic:/msys64/mingw64/include/python2.7 508 PYTHONINC=-Ic:/msys64/mingw64/include/python2.7
525 DYNAMIC_PYTHON=yes 509 DYNAMIC_PYTHON=yes
526 PYTHON_VER=27 510 PYTHON_VER=27
527 DYNAMIC_PYTHON_DLL=libpython2.7.dll 511 DYNAMIC_PYTHON_DLL=libpython2.7.dll
528 STATIC_STDCPLUS=yes 512 STATIC_STDCPLUS=yes
529 513
530 (This is for 64-bit builds. For 32-bit builds, replace mingw64 with mingw32.) 514 (This is for 64-bit builds. For 32-bit builds, replace mingw64 with mingw32.)
515 (STATIC_STDCPLUS is optional. Set to yes if you don't want to require
516 libstdc++-6.dll.)
517
518
519 (rest written by Ron Aaron: <ronaharon@yahoo.com>)
520
521 Building with the mingw32 compiler, and the ActiveState ActivePython:
522 http://www.ActiveState.com/Products/ActivePython/
523
524 After installing the ActivePython, you will have to create a 'mingw32'
525 'libpython20.a' to link with:
526 cd $PYTHON/libs
527 pexports python20.dll > python20.def
528 dlltool -d python20.def -l libpython20.a
529
530 Once that is done, edit the 'Make_ming.mak' so the PYTHON variable points to
531 the root of the Python installation (C:\Python20, for example). If you are
532 cross-compiling on Linux with the mingw32 setup, you need to also convert all
533 the 'Include' files to *unix* line-endings. This bash command will do it
534 easily:
535 for fil in *.h ; do vim -e -c 'set ff=unix|w|q' $fil
536
537 Now just do:
538 make -f Make_ming.mak gvim.exe
539
531 You will end up with a Python-enabled, Win32 version. Enjoy! 540 You will end up with a Python-enabled, Win32 version. Enjoy!
532 541
533 542
534 8. Building with Python3 support 543 8. Building with Python3 support
535 ================================ 544 ================================
546 E.g. When using MSVC (as one line): 555 E.g. When using MSVC (as one line):
547 556
548 nmake -f Make_mvc.mak 557 nmake -f Make_mvc.mak
549 PYTHON3=C:\Python36 DYNAMIC_PYTHON3=yes PYTHON3_VER=36 558 PYTHON3=C:\Python36 DYNAMIC_PYTHON3=yes PYTHON3_VER=36
550 559
560 When using MinGW and link with the official Python3 (as one line):
561
562 mingw32-make -f Make_ming.mak
563 PYTHON3=C:/Python36 DYNAMIC_PYTHON3=yes PYTHON3_VER=36
551 564
552 When using msys2 and link with Python3 bundled with msys2 (as one line): 565 When using msys2 and link with Python3 bundled with msys2 (as one line):
553 566
554 mingw32-make -f Make_ming.mak PYTHON3=c:/msys64/mingw64 567 mingw32-make -f Make_ming.mak PYTHON3=c:/msys64/mingw64
555 PYTHON3_HOME=c:/msys64/mingw64 568 PYTHON3_HOME=c:/msys64/mingw64
558 PYTHON3_VER=36 571 PYTHON3_VER=36
559 DYNAMIC_PYTHON3_DLL=libpython3.6m.dll 572 DYNAMIC_PYTHON3_DLL=libpython3.6m.dll
560 STATIC_STDCPLUS=yes 573 STATIC_STDCPLUS=yes
561 574
562 (This is for 64-bit builds. For 32-bit builds, replace mingw64 with mingw32.) 575 (This is for 64-bit builds. For 32-bit builds, replace mingw64 with mingw32.)
576 (STATIC_STDCPLUS is optional. Set to yes if you don't want to require
577 libstdc++-6.dll.)
563 578
564 579
565 9. Building with Racket or MzScheme support 580 9. Building with Racket or MzScheme support
566 ======================================== 581 ========================================
567 582
831 Using MinGW is easier than using MSVC when linking with RubyInstaller. 846 Using MinGW is easier than using MSVC when linking with RubyInstaller.
832 After you install RubyInstaller, just type this (as one line): 847 After you install RubyInstaller, just type this (as one line):
833 848
834 mingw32-make -f Make_ming.mak 849 mingw32-make -f Make_ming.mak
835 RUBY=C:/Ruby24 DYNAMIC_RUBY=yes RUBY_VER=24 RUBY_API_VER_LONG=2.4.0 850 RUBY=C:/Ruby24 DYNAMIC_RUBY=yes RUBY_VER=24 RUBY_API_VER_LONG=2.4.0
836 WINVER=0x501 851 WINVER=0x600
837 852
838 For 64-bit version, replace RUBY=C:/Ruby24 with RUBY=C:/Ruby24-x64. 853 For 64-bit version, replace RUBY=C:/Ruby24 with RUBY=C:/Ruby24-x64.
839 If you set WINVER explicitly, it must be set to >=0x500, when building with 854 If you set WINVER explicitly, it must be set to >=0x500, when building with
840 Ruby 2.1 or later. (Default is 0x501.) 855 Ruby 2.1 or later. (Default is 0x600.)
841 856
842 857
843 858
844 13. Building with Tcl support 859 13. Building with Tcl support
845 ============================= 860 =============================
847 Vim with Tcl support can be built with either MSVC or MinGW (or Cygwin). 862 Vim with Tcl support can be built with either MSVC or MinGW (or Cygwin).
848 You can use binaries from ActiveState (ActiveTcl). 863 You can use binaries from ActiveState (ActiveTcl).
849 864
850 http://www.activestate.com/activetcl 865 http://www.activestate.com/activetcl
851 866
852 For MSVC 2015 use version 8.6.6 or later. 867 Alternatively, you can use the binaries provided by IronTcl from
868
869 https://www.irontcl.com/
870
871 They might lack behind the latest version a bit, but should provide 64bit
872 and 32bit versions even if ActiveTcl does not provide them anymore.
873
874 For building with MSVC 2015 use version 8.6.6 or later.
853 When building, you need to set the following variables: 875 When building, you need to set the following variables:
854 876
855 TCL: Where tcl is installed. E.g. C:\Tcl86 877 TCL: Where tcl is installed. E.g. C:\Tcl86
856 DYNAMIC_TCL: Whether dynamic linking is used. Usually, set to yes. 878 DYNAMIC_TCL: Whether dynamic linking is used. Usually, set to yes.
857 TCL_VER: Tcl version in a short format. E.g. 86 for Tcl 8.6.X. 879 TCL_VER: Tcl version in a short format. E.g. 86 for Tcl 8.6.X.
942 [provided by Michael Soyka, updated by Ken Takata] 964 [provided by Michael Soyka, updated by Ken Takata]
943 965
944 After you've built the Vim binaries as described above, you're ready to 966 After you've built the Vim binaries as described above, you're ready to
945 install Vim on your system. However, if you've obtained the Vim sources 967 install Vim on your system. However, if you've obtained the Vim sources
946 using Git, Mercurial or by downloading them as a unix tar file, you must 968 using Git, Mercurial or by downloading them as a unix tar file, you must
947 first create a "vim80" directory. If you instead downloaded the sources as 969 first create a "vim81" directory. If you instead downloaded the sources as
948 zip files, you can skip this setup as the zip archives already have the 970 zip files, you can skip this setup as the zip archives already have the
949 correct directory structure. 971 correct directory structure.
950 972
951 A. Create a Vim "runtime" subdirectory named "vim80" 973 A. Create a Vim "runtime" subdirectory named "vim81"
952 ----------------------------------------------------- 974 -----------------------------------------------------
953 If you obtained your Vim sources as zip files, you can skip this step. 975 If you obtained your Vim sources as zip files, you can skip this step.
954 Otherwise, continue reading. 976 Otherwise, continue reading.
955 977
956 Go to the directory that contains the Vim "src" and "runtime" 978 Go to the directory that contains the Vim "src" and "runtime"
957 directories and create a new subdirectory named "vim80". 979 directories and create a new subdirectory named "vim81".
958 980
959 Copy the "runtime" files into "vim80": 981 Copy the "runtime" files into "vim81":
960 copy runtime\* vim80 982 copy runtime\* vim81
961 983
962 B. Copy the new binaries into the "vim80" directory 984 B. Copy the new binaries into the "vim81" directory
963 ---------------------------------------------------- 985 ----------------------------------------------------
964 Regardless of how you installed the Vim sources, you need to copy the 986 Regardless of how you installed the Vim sources, you need to copy the
965 new binaries you created above into "vim80": 987 new binaries you created above into "vim81":
966 988
967 copy src\*.exe vim80 989 copy src\*.exe vim81
968 copy src\tee\tee.exe vim80 990 copy src\tee\tee.exe vim81
969 copy src\xxd\xxd.exe vim80 991 copy src\xxd\xxd.exe vim81
970 992
971 To install the "Edit with Vim" popup menu, you need both 32-bit and 64-bit 993 To install the "Edit with Vim" popup menu, you need both 32-bit and 64-bit
972 versions of gvimext.dll. They should be copied to "vim80\GvimExt32" and 994 versions of gvimext.dll. They should be copied to "vim81\GvimExt32" and
973 "vim80\GvimExt64" respectively. 995 "vim81\GvimExt64" respectively.
974 First, build the 32-bit version, then: 996 First, build the 32-bit version, then:
975 997
976 mkdir vim80\GvimExt32 998 mkdir vim81\GvimExt32
977 copy src\GvimExt\gvimext.dll vim80\GvimExt32 999 copy src\GvimExt\gvimext.dll vim81\GvimExt32
978 1000
979 Next, clean the 32-bit version and build the 64-bit version, then: 1001 Next, clean the 32-bit version and build the 64-bit version, then:
980 1002
981 mkdir vim80\GvimExt64 1003 mkdir vim81\GvimExt64
982 copy src\GvimExt\gvimext.dll vim80\GvimExt64 1004 copy src\GvimExt\gvimext.dll vim81\GvimExt64
983 1005
984 C. Copy gettext and iconv DLLs into the "vim80" directory 1006 C. Copy gettext and iconv DLLs into the "vim81" directory
985 ---------------------------------------------------------- 1007 ----------------------------------------------------------
986 Get gettext and iconv DLLs from the following site: 1008 Get gettext and iconv DLLs from the following site:
987 https://github.com/mlocati/gettext-iconv-windows/releases 1009 https://github.com/mlocati/gettext-iconv-windows/releases
988 Both 64- and 32-bit versions are needed. 1010 Both 64- and 32-bit versions are needed.
989 Download the files gettextX.X.X.X-iconvX.XX-shared-{32,64}.zip, extract 1011 Download the files gettextX.X.X.X-iconvX.XX-shared-{32,64}.zip, extract
990 DLLs and place them as follows: 1012 DLLs and place them as follows:
991 1013
992 vim80\ 1014 vim81\
993 | libintl-8.dll 1015 | libintl-8.dll
994 | libiconv-2.dll 1016 | libiconv-2.dll
995 | libgcc_s_sjlj-1.dll (only for 32-bit) 1017 | libgcc_s_sjlj-1.dll (only for 32-bit)
996 | 1018 |
997 + GvimExt32\ 1019 + GvimExt32\
1001 | 1023 |
1002 ` GvimExt64\ 1024 ` GvimExt64\
1003 libintl-8.dll 1025 libintl-8.dll
1004 libiconv-2.dll 1026 libiconv-2.dll
1005 1027
1006 The DLLs in the "vim80" should be the same bitness with the (g)vim.exe. 1028 The DLLs in the "vim81" should be the same bitness with the (g)vim.exe.
1007 1029
1008 D. Move the "vim80" directory into the Vim installation subdirectory 1030 D. Move the "vim81" directory into the Vim installation subdirectory
1009 --------------------------------------------------------------------- 1031 ---------------------------------------------------------------------
1010 Move the "vim80" subdirectory into the subdirectory where you want Vim 1032 Move the "vim81" subdirectory into the subdirectory where you want Vim
1011 to be installed. Typically, this subdirectory will be named "vim". 1033 to be installed. Typically, this subdirectory will be named "vim".
1012 If you already have a "vim80" subdirectory in "vim", delete it first 1034 If you already have a "vim81" subdirectory in "vim", delete it first
1013 by running its uninstal.exe program. 1035 by running its uninstal.exe program.
1014 1036
1015 E. Install Vim 1037 E. Install Vim
1016 --------------- 1038 ---------------
1017 "cd" to your Vim installation subdirectory "vim\vim80" and run the 1039 "cd" to your Vim installation subdirectory "vim\vim81" and run the
1018 "install.exe" program. It will ask you a number of questions about 1040 "install.exe" program. It will ask you a number of questions about
1019 how you would like to have your Vim setup. Among these are: 1041 how you would like to have your Vim setup. Among these are:
1020 - You can tell it to write a "_vimrc" file with your preferences in the 1042 - You can tell it to write a "_vimrc" file with your preferences in the
1021 parent directory. 1043 parent directory.
1022 - It can also install an "Edit with Vim" entry in the Windows Explorer 1044 - It can also install an "Edit with Vim" entry in the Windows Explorer