mac instalar for compilar compilador como linux macos gcc cross-platform macros

instalar - ¿Macros para GCC/G++ para diferenciar Linux y Mac OSX?



gcc for windows 7 (4)

¿Macros para GCC / G ++ para diferenciar Linux y Mac OSX?


Detecta OSX con la macro __APPLE__ si es necesario. Es mejor usar configure para detectar funciones si puede, pero no todo funciona bien de esa manera.



Yo uso __MACH__ para probar Mac OS X - no es 100% exclusivo para Mac OS X (aún puede haber algunas cajas NeXT viejas por ahí!) Pero es lo suficientemente bueno para decir la diferencia entre Mac y Linux.


La próxima vez que desee verificar las macros predefinidas soportadas por GCC en una plataforma, ejecute el preprocesador con la bandera -dM . Enumerará todas las macros predefinidas disponibles en el sistema. Por ejemplo:

$ touch dummy.hxx $ cpp -dM ./dummy.hxx #define __DBL_MIN_EXP__ (-1021) #define __FLT_MIN__ 1.17549435e-38F #define __CHAR_BIT__ 8 #define __WCHAR_MAX__ 2147483647 #define __DBL_DENORM_MIN__ 4.9406564584124654e-324 #define __FLT_EVAL_METHOD__ 0 #define __DBL_MIN_10_EXP__ (-307) #define __FINITE_MATH_ONLY__ 0 #define __SHRT_MAX__ 32767 #define __LDBL_MAX__ 1.18973149535723176502e+4932L #define __UINTMAX_TYPE__ long unsigned int #define __linux 1 #define __unix 1 #define __linux__ 1 ...