这个问题纯粹是学术性的,所以以下只是一个例子;如果我在这一行前添加两个斜杠
#pragma comment(lib, "../node-src/Release/node")
我会得到十几个链接器错误。好吧不是真的打,但至少2-3行看起来像这样
1>test.obj : error LNK2001: unresolved external symbol "public: static class
v8::Local<class v8::String> __cdecl v8::String::New(char const *,int)"
(?New@String@v8@@SA?
现在我知道大多数要求都在规范中,但是有没有办法知道哪些文件真的是链接器丢失了?我的意思是,如果我用常规包含替换#pragma
指令,我应该采取什么步骤?
答案 0 :(得分:3)
很简单,答案是没有简单的方法来告诉链接器缺少哪些文件。它所知道的是它正在搜索的符号,而不是您需要包含的库文件。毕竟,只要您告诉链接器在哪里搜索它,您就可以在任何您想要的库中定义这些符号。
如果您有一堆潜在的库,可以使用Lib.exe as per this post on SO之类的东西来搜索匹配的符号,然后尝试将链接器指向这些文件,但是再一次,没有办法让链接器找到这些信息为你..