Visual Studio (또는 호환을 시도하는 컴파일러)를 사용하여 Windows에서 C/C++ 프로그램을 컴파일 할 때 사용할 수있는 미리 정의 된 매크로 _WIN32 (출처 : http://msdn.microsoft.com/en-us/library/b0084kay.aspx)가 있습니다 플랫폼 별 #ifdef-s.Linux/POSIX의 플랫폼 별 매크로 관련 문서
내가 찾고있는 것은 Linux에서의 analogon이다. 내가 리눅스/POSIX 호환 가능하다고 주장하는 OS 용으로 컴파일하고 있다고 알려주는 매크로.
그래서 내가 GCC 문서로보고이 발견http://gcc.gnu.org/onlinedocs/cpp/System_002dspecific-Predefined-Macros.html 내 프로그램에 적용을, 다음 매크로 (GCC 4.4.5 - 우분투 10.10) (내가 중요한 매크로를 떨어 뜨리지 않았다 희망 약속 보았다) :
#define __USE_BSD 1
#define __unix__ 1
#define __linux 1
#define __unix 1
#define __linux__ 1
#define _POSIX_SOURCE 1
#define __STDC_HOSTED__ 1
#define __STDC_IEC_559__ 1
#define __gnu_linux__ 1
#define __USE_SVID 1
#define __USE_XOPEN2K 1
#define __USE_POSIX199506 1
#define _G_USING_THUNKS 1
#define __USE_XOPEN2K8 1
#define _BSD_SOURCE 1
#define unix 1
#define linux 1
#define __USE_POSIX 1
#define __USE_POSIX199309 1
#define __SSP__ 1
#define _SVID_SOURCE 1
#define _G_HAVE_SYS_CDEFS 1
#define __USE_POSIX_IMPLICITLY 1
위에서 언급 한 Windows 관련 매크로는 어디에서 찾을 수 있습니까? 또한
나열된 매크로 중 일부는 기능 테스트 매크로입니다 (http://www.kernel.org/doc/man-pages/online/pages/man7/feature_test_macros.7.html 참조). 작동하지 않습니다. 네가 원하는대로. – ninjalj