Мне нужно скомпилировать аддон Node.js в Windows.У меня проблема в том, что это дополнение опирается на общую библиотеку (libgeometry).У меня не было проблем со связью с libgeometry
во время компиляции на Linux и MacOS, но я действительно не знаю, как это сделать на Windows.У меня уже есть libgeometry.dll
и libgeometry.dll.a
, но как мне связать их во время компиляции?
Вот мой файл binding.gyp
:
{
"targets": [
{
"target_name": "test",
"sources": [
"src/test.cpp"
],
"include_dirs": [
"<!@(node -p \"require('node-addon-api').include\")",
"<(module_root_dir)/native/include"
],
"conditions": [
['OS in "linux"', {
"libraries": [
"-lgeometry",
"-L<(module_root_dir)/native/lib/linux/libgeometry",
"-Wl,-rpath,\$$ORIGIN/../../native/lib/linux/libgeometry"
],
"defines": [
"NAPI_CPP_EXCEPTIONS"
]
}],
['OS in "mac"', {
"libraries": [
"-lgeometry",
"-L<(module_root_dir)/native/lib/darwin/libgeometry",
"-Wl,-rpath,@loader_path/../../native/lib/darwin/libgeometry"
],
"xcode_settings": {
"GCC_ENABLE_CPP_EXCEPTIONS": "YES",
"CLANG_CXX_LIBRARY": "libc++"
}
}]
],
"dependencies": ["<!(node -p \"require('node-addon-api').gyp\")"],
"cflags": ["-fexceptions"],
"cflags_cc": ["-fexceptions"],
"msvs_settings": {
"VCCLCompilerTool": {
"ExceptionHandling": 1
}
}
}
]
}