64-bit machine generate an executable where long is 32-bits and pointers are 64-bits.
Kraiser
pietiatibia1@gmail.com
Thu May 20 09:03:00 GMT 2010
Ian Lance Taylor-3 wrote:
>
> Kraiser <pietiatibia1@gmail.com> writes:
>
>> It's my problem actually any possible way to do that ?
>> well -m32 isn't actually what i'm looking for because it compiles code
>> for
>> 32-bit enviorment along with pointers(32 bit) i need pointers to be
>> 64-bit
>> but long = 32bit just like it is on Windows LLP64.
>> If the feature isn't exist maybe it would be awesome to add this in
>> future
>> releases of GCC :?
>> seems like more people needs it:
>> http://stackoverflow.com/questions/1857296/can-gcc-on-ubuntu-on-a-64-bit-machine-generate-an-executable-where-long-is-32-bit
>
> Compiler options of this sort are problematic because they change the
> ABI. That is, code compiled with this option can not be safely linked
> with code compiled without this option. Code compiled with this
> option can not be safely used with dynamic librares compiled without
> this option. Code compiled with this option can not safely make
> system calls on a kernel compiled without this option (e.g., on
> GNU/Linux, the stat structure includes fields of type unsigned long,
> so the stat system call will not work as expected).
>
> So the only people who can safely use this option are people who are
> prepared to recompile their entire system.
>
> It's a very simple change to make to the source code, but that doesn't
> necessarily mean that it is a good idea.
>
> Ian
>
>
There is an option in config of linux kernel to recompile kernel with it ?
--
View this message in context: http://old.nabble.com/64-bit-machine-generate-an-executable-where-long-is-32-bits-and-pointers-are-64-bits.-tp28614453p28617680.html
Sent from the gcc - Help mailing list archive at Nabble.com.
More information about the Gcc-help
mailing list