Visual Studio 9:显示链接器搜索路径

Joh*_*ing 5 c++ linker visual-studio-2008 visual-studio

如何说服 MSVC9 链接器向我显示它正在搜索包含库的路径lib?

我正在尝试解决出现以下链接器错误的问题:

LINK : fatal error LNK1104: cannot open file 'MyGizmo.lib'
Run Code Online (Sandbox Code Playgroud)

在Linker > General下,我将其他库目录设置为:

..\..\..\x64\Release
Run Code Online (Sandbox Code Playgroud)

我想,这就是我要查找的 lib 文件所在的位置。

当我将此路径更改为 lib 文件所在的完全限定目录时,链接器会传递并查找 lib 文件。因此,我得出结论,我上面输入相对路径的方式是不正确的。如果路径是相对于源代码所在位置的,则该相对路径应该是正确的。

那么我如何告诉 MSVC9 链接器告诉我它认为..\..\..\x64\Release解析的是什么?

Joh*_*ing 4

在上面发布我的问题后,我想出了一种方法来做到这一点。我不知道这是否是一个可取的方法,但它对我有用并且我能够解决问题。

我创建了一个自定义预链接步骤,它只是发出一个cd不带参数的命令来显示当前工作目录。

在Configuration Properties > Build Events > Pre-Link Event下,我将Command Line属性设置为:

cd
Run Code Online (Sandbox Code Playgroud)

再次构建时,输出为:

1>------ Build started: Project: MyThingy, Configuration: Release x64 ------
1>Performing Pre-Link Event...
1>c:\build\VS2008\SuperWare\Some\Library\
1>Linking...
Run Code Online (Sandbox Code Playgroud)

我正在寻找的图书馆位于:

c:\build\vs2008\SuperWare\Tools\Gizmo\x64\Release
Run Code Online (Sandbox Code Playgroud)

由此我可以推断出我需要的相对路径是:

..\..\Tools\Gizmo\x64\Release
Run Code Online (Sandbox Code Playgroud)

我相应地更改了“附加库目录”属性,并且构建成功。