mocchira / libcutil

Utility for C-lang

Home Page:http://leo-project.net/leofs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

libcutil

Overview

Utility functions for C language. Features are described below:

  • basic data structures: such as (singly|doubly)linked list, queue etc copied from freebsd
  • lru: LRU(Least Recently Used) based on doubly linked list
  • hashmap: Hashmap based on go1.1's implementation (simplified AND modified for getting rid of go runtime dependencies)
  • slab: slab allocator for fast memory management(malloc/free)
  • cache: simple cache implementation with LRU

Dependencies

  • Check for C Unit tests
  • CMake for building/testing/deploying C programs
  • Ubuntu 16.04:
    • libsubunit-dev

Install dependencies

  • For Ubuntu 16.04
$ sudo apt-get install cmake check libsubunit-dev
  • For Ubuntu/Debian
$ sudo apt-get install cmake check
  • For RHEL/CentOS
$ sudo yum install cmake check check-devel

Build/Install libcutil

    git clone git://github.com/leo-project/libcutil.git
    cd libcutil
    mkdir build
    cd build
    cmake ..
    make
    make test
    sudo make install

Sponsors

LeoProject/LeoFS is sponsored by Rakuten, Inc. and supported by Rakuten Institute of Technology.

About

Utility for C-lang

http://leo-project.net/leofs


Languages

Language:C 93.1%Language:CMake 5.3%Language:C++ 1.6%