diff --git a/bin/nodejs/binding.gyp.in b/bin/nodejs/binding.gyp.in
index 23f3b0d1c913aa4ca9faa1975f2bafea4b052c44..a32994fbabe3d926f9a8b35a9b68db00be9faacb 100644
--- a/bin/nodejs/binding.gyp.in
+++ b/bin/nodejs/binding.gyp.in
@@ -8,7 +8,15 @@
       'libraries': ['-L@JAMI_LINK_DIRECTORIES@', '-ljami-core', '-lyaml-cpp', @JAMI_LINK_LIBRARIES@],
       'cflags!': [ '-fno-exceptions' ],
       'cflags_cc!': [ '-fno-exceptions', '-fno-rtti', '-std=gnu++1y' ],
-      'cflags_cc': [ '-std=gnu++17' ],
+      'cflags_cc': [ '-std=gnu++17', '-frtti', '-fexceptions' ],
+      'xcode_settings': {
+        'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
+        'GCC_ENABLE_CPP_RTTI': 'YES',
+        'CLANG_CXX_LIBRARY': 'libc++',
+      },
+      'msvs_settings': {
+        'VCCLCompilerTool': { 'ExceptionHandling': 1 },
+      },
     }
   ],
   'variables' : { 'openssl_fips': '' }