```shell javac -h . NavitiveMethodsClass.java # generates header javac NavitiveMethodsClass.java Main.java gcc -shared -I /opt/homebrew/Cellar/openjdk/19.0.2/include -o libNativeMethodsClass.jnilib NativeMethodsClass.c java Main ``` The shared library must have a `lib` prefix and `.jnilib` extension on macOS.