gozfree / libraries
- вторник, 23 августа 2016 г. в 03:14:00
C
Basic libraries all written in c by gozfree, including network, event, config, log, hash, ipc, rpc, mem, and so on
This is a collection of basic libraries.
Library | Note |
---|---|
libatomic | Atomic operation library. |
libcmd | Based on readline, a bash like library. |
libconfig | Configure library, support ini, json. |
libdict | Hash key-value dictonary library. |
libdlmod | Dynamic linking loader wrapper library. |
libgevent | Reactor event library, like libevent |
libhash | Hash key-value library based on hlist from kernel. |
libipc | Inter-Process Communication, support mqueue/netlink/shm. |
liblog | Log library, support console/file/rsyslog. |
libmacro | Basic Macro define library, include kernel list and so on. |
libosal | OSAL(Operating System Abstraction Layer) library. |
libp2p | High level p2p punch hole library, easy API to use. |
libptcp | Pseudo Tcp Socket over UDP, rewrite with C from libjingle. |
librbtree | Librbtree comes from linux kernel rbtree. |
librpc | Remote Procedure Call library. |
libskt | Socket wrapper library for easy use. |
libstun | STUN protocol wrapper library. |
libtime | Time wrapper library for easy use. |
liblock | Lock/mutex/sem wrapper library for easy use. |
libthread | Thread wrapper library for easy use. |
libworkq | Work queue in userspace like work-queue/tasklet in kernel. |
Recommend Ubuntu14.04 gcc-4.8.4+
linux platform (32/64 bit)$ cd libraries
$ ./build.sh
$ sudo ./build.sh install
host(linux) target(rasberrypi)
(you need download toolchain of rasberrypi)$ ./build.sh all pi
host(rasberrypi board)$ ./build.sh
$ sudo ./build.sh install
android arm cross compile
(you need download android-ndk-r9-linux-x86_64.tar.bz2)$ ./build.sh all android
android naitve develop
also need ndk tools$ cd android_jni_libs
$ ndk-build
After install, the libxxx.xx will be installed in /usr/local/lib/.
libxxx.h, libxxx.so or libxxx.a of libraries are also in ./output/$(ARCH)
If you want to add your own library into the build script, no need repeat the same code, only auto gen libxxx framework.$ ./autogen_lib.sh libfoo
GPL. Please refer to the LICENSE file for detailed information.
Welcome pull request to the libraries.
gozfree gozfree@163.com