#macos-ios #ios #api-bindings #unit #macos

sys coreaudio-sys

Bindings for Apple's CoreAudio frameworks generated via rust-bindgen

21 releases

Uses old Rust 2015

0.2.15 Jan 4, 2024
0.2.14 Nov 15, 2023
0.2.13 Sep 23, 2023
0.2.12 Mar 25, 2023
0.0.1 Feb 28, 2015

#11 in macOS and iOS APIs

Download history 18503/week @ 2024-01-19 18173/week @ 2024-01-26 17419/week @ 2024-02-02 22027/week @ 2024-02-09 20371/week @ 2024-02-16 18357/week @ 2024-02-23 19580/week @ 2024-03-01 19142/week @ 2024-03-08 17386/week @ 2024-03-15 23118/week @ 2024-03-22 22989/week @ 2024-03-29 24473/week @ 2024-04-05 25433/week @ 2024-04-12 24743/week @ 2024-04-19 25527/week @ 2024-04-26 27474/week @ 2024-05-03

107,201 downloads per month
Used in 671 crates (5 directly)

MIT license

11KB
123 lines

coreaudio-sys Actions Status Crates.io Crates.io docs.rs

Raw bindings to Apple's Core Audio API for macos and iOS generated using rust-bindgen. coreaudio-rs is an attempt at offering a higher level API around this crate.

Cross Compiling

Rust Cross has a good explanation of how cross-compiling Rust works in general. While the author of Rust Cross advises against it, it is perfectly possible to cross-compile Rust for MacOS on Linux. OSXCross can be used to create a compiler toolchain that can compile for MacOS on Linux.

Environment Variables

When cross-compiling for MacOS on Linux there are two environment variables that are used to configure how coreaudio-sys finds the required headers and libraries. The following examples assume that you have OSXCross installed at /build/osxcross.

COREAUDIO_SDK_PATH

This tell coreaudio-sys where to find the MacOS SDK:

export COREAUDIO_SDK_PATH=/build/osxcross/target/SDK/MacOSX10.11.sdk

No runtime deps

~0–2.4MB
~36K SLoC