STATUS_DLL_NOT_FOUND error (Exit code 0xC0000135)

Hi,

I have got the STATUS_DLL_NOT_FOUND error (Exit code 0xC0000135).

I have run dumpbin.exe" /DEPENDENTS on the binary and listed dependent DLLs and checked that all of them are in the PATH, so what can be the cause of this error? What DLL can be missing?

The whole log can be found in the failed step “Test” here:

https://github.com/ldorau/libpmemobj-cpp/commit/17c89bff6dffc1b040e8495a434d636c80d5a643/checks?check_suite_id=341850102

2 Likes

Can you check whether your test ex-queue_0_none is correct? Could ex-queue_0_none test be executed successfully in your local machine?

1 Like

@yanjingzhu wrote:

Can you check whether your test ex-queue_0_none is correct? Could ex-queue_0_none test be executed successfully in your local machine?

Yes, it is correct.

As you can see in: 

https://github.com/ldorau/libpmemobj-cpp/commit/b52623eef70cf104c11b8b64241b132752823fba/checks?check_suite_id=348762827

The command:

> D:/a/libpmemobj-cpp/libpmemobj-cpp/build/tests/Debug/ex-queue.exe ./testfile push 1

  • succeeds when it is called directly in the shell (lines #82-83 in the log) and

  • fails when it is called by ctest (lines #147 #154 in the log).

So it can be a problem with CMake or ctest.

Can you use cTest to run the test in your local machine? Would you like to enable debug logging ,run a new workflow run and share us the workflow run link here?  

@yanjingzhu wrote:

Can you use cTest to run the test in your local machine? Would you like to enable debug logging ,run a new workflow run and share us the workflow run link here?  

I run these tests with CTest on my local (but Linux) machine and it works.

The same tests run with CTest on Appveyor (on Windows OS) also work:

https://ci.appveyor.com/project/pmem/libpmemobj-cpp/builds/29466753

https://github.com/pmem/libpmemobj-cpp/blob/7191ebea48f9d1bde6abc73ab08b2604c48d4f96/appveyor.yml

I have enabled debug logging :

https://github.com/ldorau/libpmemobj-cpp/commit/e4601cfb1bba330267c4bef3cbff2ff25da44047/checks?check_suite_id=353327785

The code can be found here:

https://github.com/ldorau/libpmemobj-cpp/tree/windows

Thanks!

The root cause and the solution of the issue:

I forgot to set the architecture for CMake via the ‘-A’ option:

-A "x64"

e.g.:

cmake . -G "Visual Studio 16 2019" -A "x64" ...
1 Like