ArchiveOrangemail archive

Fedora MinGW (Windows cross-compiler) project


fedora-mingw.lists.fedoraproject.org
(List home) (Recent threads) (111 other Fedora Project lists)

Subscription Options

  • RSS or Atom: Read-only subscription using a browser or aggregator. This is the recommended way if you don't need to send messages to the list. You can learn more about feed syndication and clients here.
  • Conventional: All messages are delivered to your mail address, and you can reply. To subscribe, send an email to the list's subscribe address with "subscribe" in the subject line, or visit the list's homepage here.
  • This list contains about 3,005 messages, beginning Oct 2008
  • This list doesn't seem to be active
Report the Spam
This button sends a spam report to the moderator. Please use it sparingly. For other removal requests, read this.
Are you sure? yes no

mingw defines __MSVCRT_VERSION__

Ad
Farkas Levente 1237487435Thu, 19 Mar 2009 18:30:35 +0000 (UTC)
hi,
while we try to compile gstreamer we got and error
error: storage size of 'stat_results' isn't known
and the reason is that because __stat64 is defined in
/usr/i686-pc-mingw32/sys-root/mingw/include/sys/stat.h
but only as :
----------------------------------------
#if __MSVCRT_VERSION__ >= 0x0601
struct __stat64
{
    _dev_t st_dev;
    _ino_t st_ino;
    _mode_t st_mode;
    short st_nlink;
    short st_uid;
    short st_gid;
    _dev_t st_rdev;
    __int64 st_size;
    __time64_t st_atime;
    __time64_t st_mtime;
    __time64_t st_ctime;
};
#endif /* __MSVCRT_VERSION__ */
----------------------------------------
and at the same time in
/usr/i686-pc-mingw32/sys-root/mingw/include/_mingw.h :
----------------------------------------
#ifndef __MSVCRT_VERSION__
/*  High byte is the major version, low byte is the minor. */
# define __MSVCRT_VERSION__ 0x0600
#endif----------------------------------------
may be it's not the right place to ask and would be better to move to
mingw mailing list, but it's the right version?
ie. the current runtime really not support __MSVCRT_VERSION__ >= 0x0601?
thanks.
yours.
Kevin Kofler 1237487883Thu, 19 Mar 2009 18:38:03 +0000 (UTC)
Farkas Levente wrote:
> may be it's not the right place to ask and would be better to move to
> mingw mailing list, but it's the right version?
> ie. the current runtime really not support __MSVCRT_VERSION__ >= 0x0601?
> thanks.No, it's just that the default version is 0x0600 to be compatible with old
installed versions of msvcrt.dll.

You can compile with -D__MSVCRT_VERSION__=0x0601, but then expect trouble on
systems which still ship the ancient 0x0600 version (e.g. Window$ 95 OSR 2,
I guess - the original Window$ 95 didn't include msvcrt.dll at all). I'm
not sure when the 0x0601 version was introduced nor whether it's worth
caring about the systems which shipped the 0x0600 version and never got
their msvcrt.dll upgraded by a newer M$VC application.

        Kevin Kofler
Alexey Pushkin 1237488686Thu, 19 Mar 2009 18:51:26 +0000 (UTC)
Kevin Kofler wrote:
> Farkas Levente wrote:
>> may be it's not the right place to ask and would be better to move to
>> mingw mailing list, but it's the right version?
>> ie. the current runtime really not support __MSVCRT_VERSION__ >= 0x0601?
>> thanks.
> 
> No, it's just that the default version is 0x0600 to be compatible with old
> installed versions of msvcrt.dll.
> 
> You can compile with -D__MSVCRT_VERSION__=0x0601, but then expect trouble on
> systems which still ship the ancient 0x0600 version (e.g. Window$ 95 OSR 2,
> I guess - the original Window$ 95 didn't include msvcrt.dll at all). I'm
> not sure when the 0x0601 version was introduced nor whether it's worth
> caring about the systems which shipped the 0x0600 version and never got
> their msvcrt.dll upgraded by a newer M$VC application.
>why cares about win95 :-)
Farkas Levente 1237497242Thu, 19 Mar 2009 21:14:02 +0000 (UTC)
Kevin Kofler wrote:
> Farkas Levente wrote:
>> may be it's not the right place to ask and would be better to move to
>> mingw mailing list, but it's the right version?
>> ie. the current runtime really not support __MSVCRT_VERSION__ >= 0x0601?
>> thanks.
> 
> No, it's just that the default version is 0x0600 to be compatible with old
> installed versions of msvcrt.dll.
> 
> You can compile with -D__MSVCRT_VERSION__=0x0601, but then expect trouble on
> systems which still ship the ancient 0x0600 version (e.g. Window$ 95 OSR 2,
> I guess - the original Window$ 95 didn't include msvcrt.dll at all). I'm
> not sure when the 0x0601 version was introduced nor whether it's worth
> caring about the systems which shipped the 0x0600 version and never got
> their msvcrt.dll upgraded by a newer M$VC application.ok i know that and it's works, but the real question is:
do we want to support such old systems?
if not shouldn't we have to add
-D__MSVCRT_VERSION__=0x0601
(or even 0x0700) to macros.mingw32's %_mingw32_cflags?
so which windows version we'd like to support?
Richard W.M. Jones 1237503791Thu, 19 Mar 2009 23:03:11 +0000 (UTC)
On Thu, Mar 19, 2009 at 10:14:02PM +0100, Farkas Levente wrote:
> Kevin Kofler wrote:
> > Farkas Levente wrote:
> >> may be it's not the right place to ask and would be better to move to
> >> mingw mailing list, but it's the right version?
> >> ie. the current runtime really not support __MSVCRT_VERSION__ >= 0x0601?
> >> thanks.
> > 
> > No, it's just that the default version is 0x0600 to be compatible with old
> > installed versions of msvcrt.dll.
> > 
> > You can compile with -D__MSVCRT_VERSION__=0x0601, but then expect trouble on
> > systems which still ship the ancient 0x0600 version (e.g. Window$ 95 OSR 2,
> > I guess - the original Window$ 95 didn't include msvcrt.dll at all). I'm
> > not sure when the 0x0601 version was introduced nor whether it's worth
> > caring about the systems which shipped the 0x0600 version and never got
> > their msvcrt.dll upgraded by a newer M$VC application.
> 
> ok i know that and it's works, but the real question is:
> do we want to support such old systems?
> if not shouldn't we have to add
> -D__MSVCRT_VERSION__=0x0601
> (or even 0x0700) to macros.mingw32's %_mingw32_cflags?
> so which windows version we'd like to support?It's not a good idea to add this to _mingw32_cflags.  Developers can
add it themselves when they want to deprecate these really old systems
for their own software.

Rich.
Alexey Pushkin 1237487889Thu, 19 Mar 2009 18:38:09 +0000 (UTC)
Just define __MSVCRT_VERSION__=0x0601
and that'll work for you.

I never tried win2k, but on WinXP and others msvcrt.dll
does have all the xxx64() functions that require
__MSVCRT_VERSION__ >= 0x0601Farkas Levente wrote:
> hi,
> while we try to compile gstreamer we got and error
> error: storage size of 'stat_results' isn't known
> and the reason is that because __stat64 is defined in
> /usr/i686-pc-mingw32/sys-root/mingw/include/sys/stat.h
> but only as :
> ----------------------------------------
> #if __MSVCRT_VERSION__ >= 0x0601
> struct __stat64
> {
>     _dev_t st_dev;
>     _ino_t st_ino;
>     _mode_t st_mode;
>     short st_nlink;
>     short st_uid;
>     short st_gid;
>     _dev_t st_rdev;
>     __int64 st_size;
>     __time64_t st_atime;
>     __time64_t st_mtime;
>     __time64_t st_ctime;
> };
> #endif /* __MSVCRT_VERSION__ */
> ----------------------------------------
> and at the same time in
> /usr/i686-pc-mingw32/sys-root/mingw/include/_mingw.h :
> ----------------------------------------
> #ifndef __MSVCRT_VERSION__
> /*  High byte is the major version, low byte is the minor. */
> # define __MSVCRT_VERSION__ 0x0600
> #endif
> ----------------------------------------
> may be it's not the right place to ask and would be better to move to
> mingw mailing list, but it's the right version?
> ie. the current runtime really not support __MSVCRT_VERSION__ >= 0x0601?
> thanks.
> yours.
>
Home | About | Privacy