windmc(1) on Solnix vs Linux and the BSDs

windmc is the binutils Windows message compiler. It is not in the base Solnix system: install pkgs.solnix.binutils. The Solnix and Linux pages are textually the same apart from line wrapping, so flags and defaults match Linux. The BSD pages are not in the bundle.

What Solnix runs

Not installed by default: add pkgs.solnix.binutils. The bundle lists no other illumos variants. The Solnix page is the binutils page and documents the same options as the Linux binutils-2.46 page.

Differences

Compared withTopicWhat differs
Linuxsame programThe Solnix page (pkgs.solnix.binutils) and the Linux binutils-2.46 page document the same synopsis, options, defaults and @file handling. The only visible differences are line wrapping. Scripts written for Linux windmc should behave the same on Solnix.
Source: Solnix windmc(1) SYNOPSIS, OPTIONS; Linux windmc(1) SYNOPSIS, OPTIONS
FreeBSD, OpenBSD, NetBSDno counterpart page in the bundleThe bundle has no windmc page for FreeBSD, OpenBSD or NetBSD. The manual text here does not say whether those systems ship windmc or what it does there. Do not assume it is present.
Source: Bundle header: COUNTERPART lists only linux windmc(1)
all fournot in the base systemOn a default Solnix system windmc is not on PATH. Install pkgs.solnix.binutils to get it. A build script that calls windmc fails with command-not-found until the package is added.
Source: Bundle header: 'none: install pkgs.solnix.binutils'
Linux-h means headerdir, -H means helpOn both Solnix and Linux, -h takes a path (the header output directory) and -H displays help. This is the reverse of the usual convention, where -h is help. -V prints the version.
Source: Solnix windmc(1) -h, -H, -V; Linux windmc(1) -h, -H, -V
LinuxdefaultsDefaults are the same on Solnix and Linux: ASCII input (-a), UTF16 output in bin files (-U), codepage 1252 for input and output, hexadecimal constants, a .h header extension, and CR/LF message termination unless -n is given.
Source: Solnix windmc(1) -a, -U, -C, -O, -d, -e, -n; Linux windmc(1) same options
Linux-o not implementedOn both Solnix and Linux, -o (--hresult_use) is documented as 'Not yet implemented'. Status codes are used when it is absent. Do not depend on OLE2 HRESULT header output.
Source: Solnix windmc(1) -o; Linux windmc(1) -o

Standards

  • POSIX: windmc is not a POSIX.1-2024 utility.

Writing portable scripts

  • Check that windmc is on PATH before calling it; on Solnix it needs pkgs.solnix.binutils.
  • Use the long option names (--headerdir, --help) in scripts, because -h and -H are the reverse of the usual help convention.

Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.