Daniel Berger
2008-Dec-01 05:52 UTC
[Win32utils-devel] [ruby-core:20183] Re: Unable to build from source on Vista, VC++ 9
Nobuyoshi Nakada wrote:> Hi, > > At Sun, 30 Nov 2008 22:42:36 +0900, > Daniel Berger wrote in [ruby-core:20176]: >> eval.c(9839) : fatal error C1189: #error : unsupported platform >> NMAKE : fatal error U1077: ''"C:\Program Files (x86)\Microsoft Visual Studio >> 9.0\VC\BIN\amd64\cl.EXE"'' : return code ''0x2'' >> Stop. > > VC seems to define _M_AMD64 on amd64 instead of _M_IX86, but > I''m not sure about AMD64 instruction set and if Windows on it > saves the exception list in the same place. Do you have any > idea?As Park Heesob brought up on win32utils-devel, SEH on 64-bit Windows is table based instead of stack based. From MSDN: "One of the constraints for the x64 compiler is to have no inline assembler support. This means that functions that cannot be written in C or C++ will either have to be written as subroutines or as intrinsic functions supported by the compiler. Certain functions are performance sensitive while others are not. Performance-sensitive functions should be implemented as intrinsic functions. In general, this will be the same list of intrinsic functions implemented for ALPHA and the Itanium but will include x64 specific functions as well." http://msdn.microsoft.com/en-us/library/wbk4z78b.aspx So, I guess we must compile in 32-bit mode on Windows. :( Regards, Dan