how to add dependence to static library in binding.gyp node-gyp for node.js extension

前端 未结 2 1067
遇见更好的自我
遇见更好的自我 2021-01-01 18:53

I have a simple binding.gyp file for building my node.js extension. I want to change the linking method of the library \"mylib\" and link it statically instead of using shar

相关标签:
2条回答
  • 2021-01-01 18:58

    Just add the path of static .a or .so file in the "libraries" section,

    "libraries": [ "/usr/local/lib/libnetfilter_queue.so.1.3.0" ]

    0 讨论(0)
  • 2021-01-01 19:04

    You could have node-gyp insert the path for you with the built in variable module_root_dir If I interpret your code correctly, changing your libraries to e.g.:

    "libraries": [
        "-lmylib",
        "-L<(module_root_dir)/../Library/binaries/linux/Release"
    ],
    

    might do the trick. Though I'm not sure if it will link with the .a or .so version, to specify that you could try:

    "libraries": [
        "<(module_root_dir)/../Library/binaries/linux/Release/libmylib.a"
    ],
    

    without the -L prefix and -lmylib. Further more, I'm a bit unsure if you're allowed to traverse above the root directory though. I have not tested using anything above the module root directory before. Other than that you should be good to go.

    0 讨论(0)
提交回复
热议问题