相关疑难解决方法(0)

启动.NET应用程序时错误代码0xc0000135是什么意思?

症状是应用程序在用户站点的大多数PC(Windows 7和XP)上正确启动,但在一台计算机上始终无法启动错误"应用程序未能正确初始化(0xc0000135)".有什么问题?

.net

13
推荐指数
2
解决办法
4万
查看次数

使用 CMake,如何在 gtest_discover_tests --gtest_list_tests 调用上设置环境属性?

我目前正在将我们当前的构建环境从 MSBuild 迁移到 CMake。我有一种情况,我需要更新PATH变量才能运行单元测试可执行文件。这对 来说不是问题gtest_add_tests,因为它使用源来识别测试。但是gtest_discover_tests,使用--gtest_list_tests标志执行单元测试的无法识别任何测试,因为STATUS_DLL_NOT_FOUND在构建过程中遇到错误。

例如:

add_executable(gTestExe ...)
target_include_directories(gTestExe ...)
target_compile_definitions(gTestExe ...)
target_link_libraries(gTestExe ...)
set (NEWPATH "/path/to/bin;$ENV{PATH}")
STRING(REPLACE ";" "\\;" NEWPATH "${NEWPATH}")
Run Code Online (Sandbox Code Playgroud)

这有效:

gtest_add_tests(TARGET gTestExe TEST_LIST allTests)
set_tests_properties(${all_tests} PROPERTIES ENVIRONMENT "PATH=${NEWPATH}")
Run Code Online (Sandbox Code Playgroud)

但这不会:

#set_target_properties(gTestExe  PROPERTIES ENVIRONMENT "PATH=${NEWPATH}")
#set_property(DIRECTORY PROPERTY ENVIRONMENT "PATH=${NEWPATH}")
gtest_discover_tests(gTestExe  PROPERTIES ENVIRONMENT "PATH=${NEWPATH}")
Run Code Online (Sandbox Code Playgroud)

编辑:使用gtest_add_tests. 问题是在gtest_discover_tests注册的后期构建步骤中发现测试的调用失败,因为所需的库不在PATH.

cmake googletest

7
推荐指数
1
解决办法
1189
查看次数

标签 统计

.net ×1

cmake ×1

googletest ×1