Как мне встроить ссылку .lib в файл .gyp - PullRequest
0 голосов
/ 01 мая 2019

Я пытаюсь встроить libcurld.lib в аддон node.js c ++, но когда я пытаюсь собрать его с помощью gyp, у меня возникают проблемы.

Я всегда получаю ошибку компоновщика, LNK2001. Если я добавлю define: 'CURL_STATICLIB', я получу LNK2019.

Вот как выглядит мой файл:

{
    "targets": [{
        "target_name": "addon",
      "sources": [ "addon.cpp",  ],
        'link_settings': {
            'include_dirs': ["<(module_root_dir)/curl/include", "<(module_root_dir)/curlcpp/include"],
            'libraries': [ '<(module_root_dir)/curl/build/lib/x64/libcurld.lib', '<(module_root_dir)/curlcpp/lib/x64/curlcppd.lib'],
        },
    }]
}

Вот полная ошибка, которую я получаю от cmd при сборке:

addon.obj : error LNK2001: unresolved external symbol __imp_curl_easy_perform [C:\Users\Luke\Desktop\app\build\addon.vcxproj]
addon.obj : error LNK2001: unresolved external symbol __imp_curl_easy_init [C:\Users\Luke\Desktop\app\build\addon.vcxproj]
addon.obj : error LNK2001: unresolved external symbol __imp_curl_easy_cleanup [C:\Users\Luke\Desktop\app\build\addon.vcxproj]
addon.obj : error LNK2001: unresolved external symbol __imp_curl_easy_setopt [C:\Users\Luke\Desktop\app\build\addon.vcxproj]
C:\Users\Luke\Desktop\app\build\Release\addon.node : fatal error LNK1120: 4 unresolved externals [C:\Users\Luke\Desktop\app\build\addon.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:189:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:248:12)
gyp ERR! System Windows_NT 10.0.17763
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "build"
gyp ERR! cwd C:\Users\Luke\Desktop\app
gyp ERR! node -v v10.15.3
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
...