From: Charles Mills Date: 2005-06-23T05:05:43+09:00 Subject: Re: How I can find out on which platform I am running (32/64 bits)? Daniel Berger wrote: > WATANABE Hirofumi wrote: > > Hi, > > > > "Joachim Just" writes: > > > > > >>I wonder whether within ruby there is a method to find out on which > >>platform my application is running. > >> > >>Unfortunately, the application has to know if it is a 32-bit or 64-bit > >>system. > >> > >>Any hints are highly appreciated. > > > > > > > > 64-bit % ruby -ve 'p [0].pack("l!").size' > > ruby 1.9.0 (2005-05-31) [x86_64-netbsd] > > 8 > > > > 32-bit % ruby -ve 'p [0].pack("l!").size' > > ruby 1.9.0 (2005-06-13) [i386-linux] > > 4 > > That doesn't tell me much on Solaris: > > >ruby -ve 'p [0].pack("l!").size' > ruby 1.8.2 (2004-12-25) [sparc-solaris2.10] > > Ara's approach should work fine, though. > > Finding the bitness of Ruby itself is easy. Finding a cross platform > way to find the bitness of the OS itself is another matter. I'm not > sure what the OP is after. > > If anyone knows of a good, cross-platform way of finding the bitness of > the OS itself, I'd like to know that myself. :) > > Regards, > > Dan irb(main):001:0> [1].pack('L') => "\001\000\000\000" irb(main):002:0> [0x01020304].pack('L') => "\004\003\002\001" So I'm on a little endian machine. -Charlie