diff --git a/lib/src/header_parser/parser.dart b/lib/src/header_parser/parser.dart
index 2adbb0b..837d158 100644
--- a/lib/src/header_parser/parser.dart
+++ b/lib/src/header_parser/parser.dart
@@ -3,6 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 
 import 'dart:ffi';
+import 'dart:io';
 
 import 'package:ffi/ffi.dart';
 import 'package:ffigen/src/code_generator.dart';
@@ -65,7 +66,10 @@
 
   /// If the config targets Objective C, add a compiler opt for it.
   if (config.language == Language.objc) {
-    compilerOpts.addAll(strings.clangLangObjC);
+    compilerOpts.addAll([
+      ...strings.clangLangObjC,
+      ..._findObjectiveCSysroot(),
+    ]);
   }
 
   _logger.fine('CompilerOpts used: $compilerOpts');
@@ -119,3 +123,15 @@
   clang.clang_disposeIndex(index);
   return bindings.toList();
 }
+
+List<String> _findObjectiveCSysroot() {
+  final result = Process.runSync('xcrun', ['--show-sdk-path']);
+  if (result.exitCode == 0) {
+    for (final line in (result.stdout as String).split('\n')) {
+      if (line.isNotEmpty) {
+        return ['-isysroot', line];
+      }
+    }
+  }
+  return [];
+}
