Use my algorithm to correctly obtain other processes' arguments

macOS popup depicting the libgetargv dynamic library

Fast, and correct algorithm

libgetargv uses the same code as getargv, so it is just as fast and resilient as the standalone tool.


Licensed under the BSD 3-Clause License, once you've joined the appropriate Github Sponsors tier, so the library is safe to use in commercial products.


I provide a dylib to link against, and am planning on providing a static library as well.

dSYM symbols

I provide a dSYM bundle to symbolicate the library when debugging your program.


I provide a manpage that documents the library data types and functions.

Bindings to popular languages

I've made bindings to allow you to easily use libgetargv from your favorite language, and $DAY_JOB language too.


Libgetargv is written in C, out of necessity, and the C header for libgetargv is Objective-C and C++ compatible


There is a safe Rust crate that wraps the bindings to the lib


There are idiomatic Swift bindings that wrap the C Language Target for the lib (this will be published in Apple's Swift package repo once they finally set it up)


There is a Java package that provides JNI bindings for the lib as a maven jar artifact


There are Ruby bindings for the lib hosted on RubyGems


Node.js bindings with Typescript types included are hosted on npm


Python bindings are hosted on PyPi


C# bindings are hosted on Nuget


Additional language bindings are planned: Go, PHP, and Perl

homepage link