Hi all, I've noticed that we use the non-standard ranlib(1) program to create symbol tables for archives created by ar(1). This affects, as far as I can tell, every creation of static libraries we have.
ranlib(1) is, in fact, legacy. It was used to create symbol tables for archives before ar(1) was able to do that by itself. POSIX now specifies that ar(1) should create a symbol table by default, when there is at least one recognized object file[1]. Additionally, the `s` option exists which does exactly the same as ranlib(1)[2]. We could replace the ranlib(1) calls with: ar rcs files... which not only makes the creation of static libraries more portable, but also simpler. [1] https://pubs.opengroup.org/onlinepubs/9699919799.2008edition/utilities/ar.html [2] https://sourceware.org/binutils/docs/binutils/ranlib.html -- Best Regards, Tom Schwindl