0

这个问题纯属学术性的,所以下面只是一个例子;如果我在这一行前面添加两个斜杠

#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要用常规包含替换该指令,我应该采取哪些步骤?

4

1 回答 1

3

很简单,答案是没有简单的方法来判断链接器丢失了哪些文件。它所知道的只是它正在搜索的符号,而不是您需要包含的库文件。毕竟,只要您告诉链接器在哪里搜索它,您就可以在您喜欢的任何位置的任何库中定义这些符号。

如果你有一堆潜在的库,你可以使用类似Lib.exe 之类的东西来搜索匹配的符号,然后尝试将链接器指向这些文件,但同样,没有办法让链接器找到这个给你的信息..

于 2012-06-19T22:05:36.760 回答