1

I try to compile node_module via node-gyp and node-addon-api. Compilation has no errors, but I can not expose functions from static library. (As same as final node file is smaller than static library abc.a)

binding.gyp

{
    "targets": [
        {
            "target_name": "test",
            "cflags!": [ "-fno-exceptions" ],
            "cflags_cc!": [ "-fno-exceptions" ],
            "sources": [
                "/data/abc.h",
                "main.cpp"
            ],
            'include_dirs': [
                "<!@(node -p \"require('node-addon-api').include\")"
            ],
            'libraries': [
                "/data/abc.a"
            ],
            'dependencies': [
                "<!(node -p \"require('node-addon-api').gyp\")"
            ],
            'defines': [ 'NAPI_DISABLE_CPP_EXCEPTIONS' ]
        }
    ]
}

main.cpp

/* main.cpp */
#include <napi.h>
#include "abc.h"

Napi::Object InitAll(Napi::Env env, Napi::Object exports) {

  return exports;
}

NODE_API_MODULE(testaddon, InitAll)

main.js (for expose object)

const testAddon = require('./build/Release/apostlib');

console.log(testAddon);

module.exports = testAddon;
dbush
  • 205,898
  • 23
  • 218
  • 273
Jiri Kral
  • 161
  • 4

0 Answers0