1

我正在使用作为静态库交付给客户的 API。该库又利用了另一个使用英特尔编译器构建的第三方库。这个库依赖于我不拥有的一些英特尔库。当我构建一个测试应用程序时,我通过在 Visual Studio 的“忽略特定库”中指定这些库来解决这个问题。这里实际发生了什么?VS 在哪里得到这些符号呢?还

这样做会消除英特尔编译器的预期优化吗?

如果相反,我会得到这些库,那会导致处理器限制链接到我的库的可执行文件吗?

4

1 回答 1

1

要引用 VS 文档,此选项...

...允许您在解析外部引用时从它搜索的库列表中删除一个或多个指定库。链接器通过首先在您明确指定的库中搜索,然后在使用 /DEFAULTLIB 选项指定的默认库中搜索,然后在 .obj 文件中命名的默认库中搜索来解析对外部定义的引用。

即它告诉链接器在解析符号时不要考虑指定的库。只要链接器可以在其他库中找到符号,那么链接就不会失败。

如果您没有库,那么我很惊讶您需要指定任何内容 - 我看不出这会有什么影响。

如果您想查看链接器实际执行的操作,请将“显示进度”选项设置为 /VERBOSE 并重新链接。

于 2009-08-22T17:43:20.330 回答