Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#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

Stars

26 stars

Watchers

4 watching

Forks

Releases

Packages

Contributors

Languages