使用 Netbeans 进行单元测试 - 取消缓冲.dll没有这样的文件或目录

Unit Tests with Netbeans - unbuffer.dll no such file or directory

本文关键字:文件 dll Netbeans 单元测试 缓冲 取消 使用      更新时间:2023-10-16

我正在尝试让Google Test v1.7.0与Windows 10上的Netbeans v8.2配合使用。 我正在使用 Mingw-w64 作为编译器,并在 MSYS2 上安装了 mingw-w64-x86_64-gtest 包。 我在项目设置中将控制台类型设置为"外部控制台",并将-lgtest添加到"测试文件"文件夹设置中"链接器"选项卡上的"其他选项"行。 我有最小的测试应用程序,如下所示:

#include <gtest/gtest.h>
int main (int argc, char** argv) {
    ::testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}

这似乎编译得很好,但是当我尝试运行它时,出现以下错误:

0 [main] make 1060 C:msys64usrbinmake.exe: *** fatal error - error while loading shared libraries: /C/Users/Ryan/AppData/Roaming/NetBeans/8.2/bin/nativeexecution/Windows-x86_64/unbuffer.dll: cannot open shared object file: No such file or directory

关于如何解决这个问题的任何想法?

编辑,这似乎不是 gtest 独有的,如果我使用 Netbeans"简单测试"进行测试,它没有外部依赖项,我也会收到关于取消缓冲区的相同错误.dll

我在使用 cppunit 时遇到了类似的问题,并在这里找到了适合我的解决方案 https://bz.apache.org/netbeans/show_bug.cgi?id=269738

我所做的是将有问题的 unbuffer.dll 文件替换为网站上 64 位系统的"附件164026"文件。之后,测试编译并正常运行。

请务必保留旧版本的 unbuffer.dll