ProductPromotion
Logo

C++ Programming

made by https://0x3d.site

GitHub - koanlogic/libu: LibU is a multiplatform utility library written in C, with APIs for handling memory allocation, networking and URI parsing, string manipulation, debugging, and logging in a very compact way, plus many other miscellaneous tasks
LibU is a multiplatform utility library written in C, with APIs for handling memory allocation, networking and URI parsing, string manipulation, debugging, and logging in a very compact way, plus m...
Visit Site

GitHub - koanlogic/libu: LibU is a multiplatform utility library written in C, with APIs for handling memory allocation, networking and URI parsing, string manipulation, debugging, and logging in a very compact way, plus many other miscellaneous tasks

GitHub - koanlogic/libu: LibU is a multiplatform utility library written in C, with APIs for handling memory allocation, networking and URI parsing, string manipulation, debugging, and logging in a very compact way, plus many other miscellaneous tasks

== MaKL is a Prerequisite ==

LibU needs http://koanlogic.com/makl to configure and build.

The following commands should be sufficient to get MaKL installed on any Linux flavour or Darwin/MacOSX:

$ wget http://koanlogic.com/download/makl/makl-${VERSION}.tar.gz $ tar zxf makl-${VERSION}.tar.gz && cd makl-${VERSION} $ sh configure.sh $ su Password: ****

make install

Should your platform be one of Solaris, OpenSolaris, FreeBSD, PC-BSD, OpenBSD, NetBSD, DragonflyBSD, Minix or Windows (MinGW or Gygwin) take a look at the INSTALL file in the top-level MaKL sources directory to track down specific variations on the theme.

== Download ==

Once MaKL is there, you can start downloading the package (always check the official http://koanlogic.com/libu page for the latest version and related ChangeLog) and tailor it to your specific needs:

$ wget http://koanlogic.com/download/libu/libu-${VERSION}.tar.gz $ tar zxf libu-${VERSION}.tar.gz && cd libu-${VERSION}

== Configure ==

E.g. should you need to change the default installation path (i.e. /usr/local), use:

$ makl-conf --prefix="/my/install/base/dir"

Debug symbols and warnings from the compiler can be switched on via --enable_debug and --enable_warns (use --enable_icc_warns instead when working with the Intel C compiler):

$ makl-conf --enable_debug --enable_warns

Code profiling using gprof(1) can be activated via --enable_profile, and, more generally, any compiler flag can be passed to the build stage in the following way:

$ makl-conf --extra-cflags="-Wformat -Wno-format-extra-args -Wformat-security -Wformat-nonliteral -Wformat=2"

The --extra-xxx="val" is indeed a powerful mechanism by which any Makefile variable 'XXX' (uppercase!) can be given an additional value 'val': (ab)use it to tweak LDFLAGS, SHLIB_LDFLAGS, etc. as needed. Anyway if in doubt, or in search for exotic features, type makl-conf -h to display the complete list of options: it's likely that what you are trying to achieve is already there.

By default LibU is compiled as static library, to also enable shared library build, supply the --enable_shared flag.

== Pick Up What Needs to be Included ==

The default is to build all the modules, but you can disable the inclusion of specific bits selectively using the following switches: - --no_hmap: to disable the hmap module - --no_config: to disable the config module - --no_net: to disable the net module - --no_env: to disable the env module - --no_fs: to disable the fs module - --no_pwd: to disable the pwd module - --no_list: to disable the list module - --no_array: to disable the array module - --no_ringbuffer: to disable the rb module - --no_pqueue: to disable the pq module - --no_json: to disable the json module - --no_bst: to disable the bst module

Also, some specific features regarding the networking code can be disabled at configuration: - --no_ipv6: to disable IPv6 protocol support - --no_sctp: to disable SCTP protocol support - --no_unixsock: to disable UNIX IPC support

If you need to enable compatibility with (some, not all) 1.X interfaces, specify the --compat_1x command line switch.

== Build, Test and Install ==

When you are done with the configure step, you can build LibU bits and optionally test them:

$ makl $ makl -C test

And finally install it:

$ su Password: ****

makl install

== Hello LibU ! ==

You now are ready to play with your first LibU program:

$ cat main.c #include <u/libu.h>

int facility = LOG_LOCAL0;

int main (void) { u_con("Hello LibU world !"); return 0; }

Write a Makefile like the following:

$ cat Makefile include common.mk

PROG = hellolibu SRCS = main.c

LDADD += /path/to/install/prefix/lib/libu.a CFLAGS += -I/path/to/install/prefix/include

include prog.mk

Then type:

$ makl && ./hellolibu

and enjoy !

More Resources
to explore the angular.

mail [email protected] to add your project or resources here 🔥.

Related Articles
to learn about angular.

FAQ's
to learn more about Angular JS.

mail [email protected] to add more queries here 🔍.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory