Skip to content

cubicdaiya/libngxcore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

#libngxcore

libngxcore is the library built from nginx core APIs.

Why is libngxcore needed?

nginx has powerful core APIs. but they are not able to used outside nginx. If we write a nginx module, we must build a nginx module with nginx. This way is a pain when we try as quick. libngxcore simplify to try nginx core APIs.

For example, Let's try the nginx string API with libngxcore.

#include <stdio.h>

#include <nginx.h>
#include <ngx_core.h>
#include <ngx_string.h>

int main (int argc, char *argv[]) {
    ngx_str_t s = ngx_string("bokko");

    printf("s            :%s\n",  s.data);             // bokko
    printf("ngx_strlen(s):%zd\n", ngx_strlen(s.data)); // 5

    return 0;
}

Use examples as a reference about Building.

Build libngxcore.a

$ make

Build examples

$ cd examples && scons

Execute examples in Mac OS X

When libngxcore is build in Mac OS X, libngxcore.dylib as not a static library but a shared library is generated. So set DYLD_LIBRARY_PATH when executing libngxcore examples.

$ cd examples
$ ./string
dyld: Library not loaded: libngxcore.dylib
  Referenced from: /Users/bokko/workspace/libngxcore/examples/./string
  Reason: image not found
zsh: trace trap  ./string
$ DYLD_LIBRARY_PATH=../ ./string
s            :bokko
ngx_strlen(s):5
$

About

libngxcore is the library built from nginx core APIs.

Resources

License

BSD-2-Clause, BSD-2-Clause licenses found

Licenses found

BSD-2-Clause
LICENSE.libngxcore
BSD-2-Clause
LICENSE.nginx

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published