Как надежно определить версию компилятора и ОС?

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
versus
Сообщения: 45
Зарегистрирован: 12 май 2004, 01:37

как надежно определить в какой ОС компилируют исходник?
какие дефайны надо проверить чтобы убедится что это windows (VS) или linux (gcc) ?
DeeJayC
Сообщения: 497
Зарегистрирован: 17 фев 2004, 11:26
Откуда: Ленинград (который Город на Неве)
Контактная информация:

Код: Выделить всё

#ifdef WIN32
...
#else

#endif
[/endif]
"Особое внимание начинающих аквариумистов хотим обратить на то, что рыбки никогда не спят на спинке!" (c)

viel spass, DeeJayC
versus
Сообщения: 45
Зарегистрирован: 12 май 2004, 01:37

gcc такое очень хорошо скушал, спасибо
а вот с моим cl
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.3077 for 80x86
Copyright (C) Microsoft Corporation 1984-2002. All rights reserved.
не получается:
ibmp.c
ibmp.c(20) : fatal error C1083: Cannot open include file: 'unistd.h': No such fi
le or directory
utils.c
d:\bmp\ibmp_last\release\ibmp\ibmp.h(10) : fatal error C1083: Cannot open includ
e file: 'unistd.h': No such file or directory
Generating Code...
ibmp.c выглядит так:

Код: Выделить всё

...
16: #ifdef WIN32 
17: #include <stddef.h>
18:
19: #else
20: #include <unistd.h>
21: 
22: #endif
...
versus
Сообщения: 45
Зарегистрирован: 12 май 2004, 01:37

похоже что вместо WIN32 нужно говорить _WIN32
Ответить