weskoerber/mac_address
A cross-platform library to retrieve the MAC address from your network interfaces without libc.
d21b419d808215e1f82605fdaddc49750bfa3bca.tar.gzmac_addressA cross-platform library to retrieve the MAC address from your network
interfaces without libc.
First, add the dependency to your build.zig.zon using zig fetch:
zig fetch --save git+https://github.com/weskoerber/mac_address#main
Then, import mac_address into your build.zig:
const std = @import("std");
pub fn build(b: *std.Build) void {
const target = b.standardTargetOptions(.{});
const optimize = b.standardOptimizeOption(.{});
const mac_address = b.dependency("mac_address", .{
.target = target,
.optimize = optimize,
}).module("mac_address");
const my_exe = b.addExecutable(.{
.name = "my_exe",
.root_source_file = b.path("src/main.zig"),
.target = target,
.optimize = optimize,
});
my_exe.root_module.addImport(mac_address);
}
See the examples directory for example usage. Example executables can be
built by setting the examples option to true (or -Dexamples=true on the
CLI):
const mac_address = b.dependency("mac_address", .{
.target = target,
.optimize = optimize,
.examples = true,
}).module("mac_address");
zig build -Dexamples=true
mac_address API |
Linux | Windows |
|---|---|---|
getAll |
✅ | ✅ |
getAllNoLoopback |
✅ | ✅ |
[^1]: Shameless plug: if you're using a unix-like operating system or WSL on
Windows, consider using a Zig compiler version manager I wrote called
zvm. Once downloaded and in your
PATH, just run zvm install 0.12.0 (or zvm install master to get the
latest nightly).