[Win32utils-devel] [Fwd: [ruby-core:20176] Unable to build from source on Vista, VC++ 9]
Daniel Berger
djberg96 at gmail.com
Sun Nov 30 22:16:28 EST 2008
Heesob Park wrote:
> Hi,
>
> 2008/12/1 Daniel Berger <djberg96 at gmail.com>:
>> Whoops, forgot to cc this.
>>
>> Regards,
>>
>> Dan
>>
>> Hi,
>>
>> Windows Vista (Home Premium)
>> MS VC++ 9 (cl 15)
>> Ruby 1.8.6-p114 and Ruby 1.8.6-p237
>>
>> eval.c
>> ...
>> 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.
>>
>> Where the relevant code is:
>>
>> #if !defined SAVE_WIN32_EXCEPTION_LIST && !defined _WIN32_WCE
>> # error unsupported platform
>> #endif
>> #endif
>>
>
> I guess your vista is 64bit version.
>
> Modify #9797 of eval.c
> # ifdef _M_IX86
> to
> # if defined _M_IX86 || defined _M_X64
> will work for you.
Yes, 64 bit Vista.
With your change it got further along this time (with p114), but hit another snag:
eval.c
eval.c(962) : warning C4018: '>=' : signed/unsigned mismatch
eval.c(1157) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(1286) : warning C4244: '=' : conversion from '__int64' to 'long',
possible loss of data
eval.c(1488) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(2717) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(4412) : warning C4646: function declared with __declspec(noreturn) has
non-void return type
eval.c(4985) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(6312) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(6316) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(6456) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(6993) : warning C4244: '=' : conversion from '__int64' to 'long',
possible loss of data
eval.c(6994) : warning C4267: '=' : conversion from 'size_t' to 'long', possible
loss of data
eval.c(6997) : warning C4267: '=' : conversion from 'size_t' to 'long', possible
loss of data
eval.c(7160) : warning C4244: 'function' : conversion from '__int64' to 'long',
possible loss of data
eval.c(8790) : warning C4267: 'initializing' : conversion from 'size_t' to
'long', possible loss of data
eval.c(8795) : warning C4267: '+=' : conversion from 'size_t' to 'long',
possible loss of data
eval.c(8799) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(8806) : warning C4267: '=' : conversion from 'size_t' to 'long', possible
loss of data
eval.c(9553) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(9553) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(9803) : error C4235: nonstandard extension used : '__asm' keyword not
supported on this architecture
eval.c(9803) : error C2065: 'mov' : undeclared identifier
eval.c(9803) : error C2146: syntax error : missing ';' before identifier 'eax'
eval.c(9803) : error C2065: 'eax' : undeclared identifier
eval.c(9803) : error C2065: 'fs' : undeclared identifier
eval.c(9803) : error C2143: syntax error : missing ';' before ':'
eval.c(9804) : error C4235: nonstandard extension used : '__asm' keyword not
supported on this architecture
eval.c(9804) : error C2065: 'mov' : undeclared identifier
eval.c(9804) : error C2146: syntax error : missing ';' before identifier 'p'
eval.c(9804) : error C2065: 'eax' : undeclared identifier
eval.c(10708) : warning C4244: '=' : conversion from 'double' to 'long',
possible loss of data
eval.c(10709) : warning C4244: '=' : conversion from 'double' to 'long',
possible loss of data
eval.c(10820) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(12138) : warning C4293: '<<' : shift count negative or too big, undefined
behavior
eval.c(12678) : warning C4267: 'function' : conversion from 'size_t' to 'long',
possible loss of data
eval.c(12680) : warning C4267: '=' : conversion from 'size_t' to 'long',
possible loss of data
eval.c(13200) : warning C4646: function declared with __declspec(noreturn) has
non-void return type
eval.c(13228) : warning C4645: function declared with __declspec(noreturn) has a
return statement
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\BIN\amd64\cl.EXE"' : return code '0x2
'
Stop.
Not sure what happened. Any idea?
Regards,
Dan
More information about the win32utils-devel
mailing list