diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 90 |
1 files changed, 10 insertions, 80 deletions
@@ -1,5 +1,4 @@ /*! \mainpage - qlibs - C library and headers based on "djb's libs" and libowfat ================================================================ @@ -30,82 +29,7 @@ See the README in the ./dnsstub directory for details. Installation ------------ -Some build options can be configured through 'conf-build'. -Read the comments in this file for more information. - -* Building: - -a) Static libs: - -Execute - - $ make - -which does the steps of './configure && make'. -Don't forget to make sure that libs and headers will be found by the compiler/linker. -For convenience, link the current version of fehQlibs to qlibs - - $ ln -s fehQlibs-XY qlibs - -b) Shared objects libs: - -You can also build dynamic libaries for qlibs and dnsresolv. After - - $ make - -call - - $ make shared - -* Deployment: - -In case conf-build has been customized to include the location of - -- HDRDIR -- LIBDIR - -issue - - $ make install - -to deploy the include files and libs at the given location. -By default, for the libs the parent directory is used. - -* Verification: - -Check the ELFCLASS of the generated binaries in the source directory while calling - - $ file open.o - -They need to comply with your OS. See 'conf-build' for options. - -* Resulting libraries: - -The following libraries are generated: - -- qlibs.a - static basic [w/o DNS] lib (linked to libqlibs.a) -- dnsresolv.a - static DNS resolver lib (linked to libdnsresolv.a) - -and perhaps - -- libqlibs.so - dynamic, position independent (PIC) 'shared object' lib -- libdnsresolv.so - dynamic, position independent (PIC) 'shared object' lib - -These libs are of type ELF64 or ELF32 depending on the system. - -Use 'ar -t' to get the included members of the static libs. -Use 'nm' to view the members and symbols of the libs. - -The shared object libs are known NOT not work on MacOS. - - -Man pages ---------- - -In the ./man directory the current man pages for the basic qlibs routines are included. -Determine the current $mandir and (as root) install the man pages: - - $ cp *.3 $mandir/man3/ +Check the INSTALL.md document. Packaging @@ -114,8 +38,8 @@ Packaging The fehQlibs are incompatible with Gentoo's parallel compilation flag '-jN' for N > 1. -Compilation ------------ +Compatibility +------------- Starting with version fehQlibs-15b, GCC 10 and Clang compatibility is provided, which means ISO C conformance. @@ -124,9 +48,15 @@ by the global (external) 'ipv4socket' variable are avoided. stralloc.h is decoupled from genalloc.h (to be included separately). This respects the GCC 10 compilation unit behavior. +fehQlibs-25 provide compatibility with GCC 14 and Clang 18. Under the hood, +the prototypes include now the correct types of arguments (signatures) required +for function pointers. Some warning still exits; some are silly, others need to +be tackled in forthcoming releases. This depends however on the development +of the 'C' standard and the respective 'C' compilers. + ----- Updated: 20170329, Kai Peter -Updated: 20220706, Erwin Hoffmann +Updated: 20240804, Erwin Hoffmann |