Just a question.
I'm trying to build vim from source with all features on windows (64 bit version if possible). I can't seem to find a good tutorial for that. What would be the process to do so either using mingw or msys2 (with mingw) on windows.
Thank you in advance for your attention.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.![]()
Just a question.
I'm trying to build vim from source with all features on windows (64 bit version if possible). I can't seem to find a good tutorial for that. What would be the process to do so either using mingw or msys2 (with mingw) on windows.
I did but I got some make errors.
And also I saw some tutorials using the configure file, I don't know which to use then. And in that document I don't see what options I have available when compiling while if I do './configure -h' it shows the available options such as --enable-perlinterp=yes.
So I don't know which one to use neither what I am doing wrong.
—
You are receiving this because you commented.
configure is for unix-like systems.
The instructions in src/INSTALLpc.txt should work. If it doesn't, it should be updated.
—
You are receiving this because you commented.
Thanks for clarifying that for me.
Where is the documentation for what options can I specify when building? Such as building for 64bit, python support, features huge.
—
You are receiving this because you commented.
Please have a look inside the Makefiles:
https://github.com/vim/vim/blob/master/src/Make_cyg_ming.mak
and
https://github.com/vim/vim/blob/master/src/Make_ming.mak
—
You are receiving this because you commented.
I have done so. (make_ming.mak) doesn't nearly have as much options as the configure file. Can I add more? If so, where do I find all the available options/parameters?
—
You are receiving this because you commented.
Make_ming.mak is a wrapper for Make_cyg_ming.mak, so the options are described in it (and also in INSTALLpc.txt).
E.g.
$ mingw32-make -f Make_ming.mak FEATURES=HUGE PYTHON3=C:/Pyhton38 PYTHON3_VER=38 DYNAMIC_PYTHON3=yes
Hmm, the FEATURES option is not described in INSTALLpc.txt. We should updated it.
Such as building for 64bit
If you want to build for 64 bits use the MSYS2 MinGW 64-bit shortcut, otherwise use the MSYS2 MinGW 32-bit shortcut to open the MSYS2 window.
—
You are receiving this because you commented.
I have done so. (make_ming.mak) doesn't nearly have as much options as the configure file.
Please read it:
https://github.com/vim/vim/blob/dda749ce85cc07000faa86bfd2ceaecd8e4805fc/src/Make_ming.mak#L8-L9
Hmm, the FEATURES option is not described in INSTALLpc.txt. We should updated it.
Yes, indeed, or simply mention to have a look into Make_cyg_ming.mak for the various options.
—
You are receiving this because you commented.
Make_ming.makis a wrapper forMake_cyg_ming.mak, so the options are described in it (and also in INSTALLpc.txt).
Thanks, that was really helpful!
Please read it:
https://github.com/vim/vim/blob/dda749ce85cc07000faa86bfd2ceaecd8e4805fc/src/Make_ming.mak#L8-L9
Sorry, totally missed that, thanks!
If you want to build for 64 bits use the
MSYS2 MinGW 64-bitshortcut
What do you mean by shortcut?
—
You are receiving this because you commented.
If you install MSYS2 in a normal way, three shortcuts will be registered in the start menu.
—
You are receiving this because you commented.
Ah okay. Yes I have those 3.
—
You are receiving this because you commented.
Quick question. Since I plan on building it from source, can anyone tell me where (on Make_cyg_ming.mak) I can find the place where I can define the name of the person who's building it (when we do vim --version, we can see the 'author' of the build).
—
You are receiving this because you commented.
This is not a valid issue, please take the discussion elsewhere.
If you have suggestions for updating documentation, please open an issue or pull request for that.
—
You are receiving this because you commented.
In make_cyg_ming.mak lines 1284-1304 there is a conditional statement which builds the "compiled by" line based on the variables USERNAME and USERDOMAIN. If these are set in the environment before compiling starts, IIUC nothing more is needed.
—
You are receiving this because you commented.