我正在开发一个生成多个 EXE 和多个 DLL 的 C++ 项目。为了简洁起见,我希望在 Lib 文件夹中生成这些 DLL,因此构建的项目如下所示:
MyProject
----myExe1.exe
----myExe2.exe
----Lib
----myLib1.dll
----myLib2.dll
我能够成功地将 DLL 构建到 Lib 文件夹中,并且能够使用-L..\bin\Lib
EXE 的链接命令成功链接到新位置的 DLL。但是,当我实际运行 EXE 时,他们抱怨找不到相关的 DLL。
从我所做的研究来看,即使我可以链接到其他文件夹中的库,加载它们仍然需要它们与二进制文件位于同一文件夹中。
GCC,链接库,没有找到?暗示这只是事情的本意,但提到“系统必须能够找到 dll;即它必须在当前工作目录中,在路径中的目录中,或其目录中必须添加到用于此事物的特殊环境变量中”。正在引用什么“特殊环境变量”(我假设它不是 %PATH% 或者注释不会在前面特别提到路径),有没有办法可以设置它以便我的 DLL 可以正确加载?