On 14-Feb-2019 03:51, Ben Fritz wrote:
I was trying to set up for building Vim on a Windows 10 installation where I 
haven't done that before.

I tried the Msys distribution of mingw-64 first, and after I installed make and 
gcc using the package manager, I got compiler errors all over the place. Most 
errors to start with were for pretty basic things like _MAX_PATH not being 
defined (MAX_PATH is defined instead). I modified the code for simple macro 
replacements like that, and a few #ifdefs that were taking the wrong branch, 
but then I got to code in os_win32 that tried to use _putenv and _wputenv 
functions, which are not defined, and gave up that approach after a long time 
searching for a definition.

Next I tried the MingW-W64-builds package. That doesn't include make either, 
but it has mingw32-make so I tried that, and got errors reading the makefile. 
Not seeing any documentation for this package, I moved on...

...to the normal, older 32-bit Mingw, which I have used in the past. I 
installed the gcc tools and Msys, tried to build Vim, and immediately got 
errors for a missing struct definition for 64-bit file types. Searching on the 
error led to suggestions to use Mingw-64.

What am I doing wrong? Surely, somebody out there is still compiling Vim using 
Mingw? The makefiles are still there, I assume they work for someone.

If you're that someone, what Mingw distribution are you using? Did you need to 
do any extra setup/installation beyond installing gcc and make?

Hi Ben,

I am building vim and gvim using mingw64 on Win8.1 and Win7. I've not tried Win10 but I don't imagine it would be much different.

Firstly, I use the mingw64 build from here: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/ Try the 8.1 package. It includes make, but it is called "mingw32-make.exe", so I copy it to "make.exe". Make sure that the mingw64/bin folder within the package is in the path.

I put the vim source in the folder <path_to_vim_source>/vim. I make no modifications to the code (except for a few changes in feature.h). In the <path_to_vim_source> folder I put this batch file which I call "make_it.cmd":
<start batch>
@echo off

setlocal
set SRC_DIR=vim\src
set /a NR_JOBS=%NUMBER_OF_PROCESSORS% + 1
set COMMON_VARS=OPTIMIZE=MAXSPEED ARCH=native ICONV= GETTEXT= IME=no DYNAMIC_IME=no POSTSCRIPT=no OLE=no WINVER=0x0603 CSCOPE=no NETBEANS=no XPM=no DIRECTX=no FEATURES=NORMAL CHANNEL=no
set GUI_VARS=%COMMON_VARS% LFLAGS="-Wl,-nxcompat,-dynamicbase -mwindows"
set NOGUI_VARS=%COMMON_VARS% LFLAGS="-Wl,-nxcompat,-dynamicbase"
set MAKEFILE=Make_ming.mak

title Building gvim...

make --directory=%SRC_DIR% GUI=yes %GUI_VARS% --environment-overrides --jobs=%NR_JOBS% --makefile=%MAKEFILE% gvim.exe

title Building vim...

make --directory=%SRC_DIR% GUI=no %NOGUI_VARS% --environment-overrides --jobs=%NR_JOBS% --makefile=%MAKEFILE% all

title Complete

exit /b 0
</end batch>

From the <path_to_vim_source> folder I run the batch file. Note that the make file is "Make_ming.mak", I am on Win8.1 hence the WINVER of 603 and the settings are for my specific build.

I hope this helps!
Cheers
John

--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- You received this message because you are subscribed to the Google Groups "vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui