At least with the default macOS linker, resolving symbols in static libraries is not order-dependent. gnu-ld on linux brings the pain of forcing libraries to be strictly ordered so they cannot depend on symbols in previous libraries.