On 29/11/2015 17:04, Mike Williams wrote:
Hi Ken (and Taro),
On 29/11/2015 15:13, Ken Takata wrote:
Hi Mike,
2015/11/29 Sun 20:06:42 UTC+9 Mike Williams wrote:
Hi,
Just done my first build of VIM on an old Windows 7 32bit machine
upgraded to Windows 10 using VC. The link stage was failing due to
mixed machine targets being used in the make file - 32 and 64 bit! I
tracked this down to some fun with the PROCESSOR_ARCHITECTURE in a 32bit
prompt on a 64bit machine, see -
http://blogs.msdn.com/b/david.wang/archive/2006/03/26/howto-detect-process-bitness.aspx
I guess no one has ever tried to do this until now. It seems reasonable
to default to the host processor architecture and not the architecture
of the process being used to run the build. The following diff solves
the build issue for me:
diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -217,7 +217,11 @@ ASSEMBLY_ARCHITECTURE=$(CPU)
ASSEMBLY_ARCHITECTURE = x86
! endif
! else
+! ifdef PROCESSOR_ARCHITEW6432
+CPU = $(PROCESSOR_ARCHITEW6432)
+! else
CPU = $(PROCESSOR_ARCHITECTURE)
+! endif
ASSEMBLY_ARCHITECTURE = $(PROCESSOR_ARCHITECTURE)
! if ("$(CPU)" == "x86") || ("$(CPU)" == "X86")
CPU = i386
HTH - TTFN
Mike
--
Accept that some days you're the pigeon, and some days you're the statue.
I currently build 32-bit and 64-bit Vim on 64-bit Win10 without changing the
Makefile. I use 32-bit compiler for 32-bit target and 64-bit compiler for
64-bit target, but you seem to use 32-bit cross compiler targeting 64-bit.
The current makefile assume that the bitness of nmake.exe is the same as the
target, and it doesn't support cross compiling.
We need another approach to support cross compiling.
I agree that my patch is the wrong solution. As Taro points out using
the Platform environment var should take into account the cross
compilation target. However it does not seem to be set for every
architecture passed to vcvarsall.bat. I'll try a few things and see
where they leads.
My bad, too many command prompts with too many environments - Taro is on
the right track.
Mike
--
Accept that some days you're the pigeon, and some days you're the statue.
--
--
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.