# shm\_open in rt - not found when trying to install a library using CMake

**URL:** https://discourse.cmake.org/t/shm-open-in-rt-not-found-when-trying-to-install-a-library-using-cmake/15303
**Category:** Usage
**Tags:** os:windows
**Created:** [November 13, 2025, 9:51am UTC](https://discourse.cmake.org/t/shm-open-in-rt-not-found-when-trying-to-install-a-library-using-cmake/15303 "2025-11-13T09:51:19Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![Claas\_Machens](https://discourse.cmake.org/user_avatar/discourse.cmake.org/claas_machens/32/5893_2.png) [@Claas\_Machens](https://discourse.cmake.org/u/Claas_Machens)
#### Post date: [November 13, 2025, 9:51am UTC](https://discourse.cmake.org/t/shm-open-in-rt-not-found-when-trying-to-install-a-library-using-cmake/15303/1 "2025-11-13T09:51:19Z")

</div>

I am new to CMake. I wanted to Install the OpenFHE library, which instructs to use CMake to do so. (The Library states it is tested and build on MinGW (64-bit) on Windows 10, while I use MinGW64 on Windows 11, but I hope that is backwards compatible).

Following the instructions I created a repo, and then used cmake .. in a new empty folder (with the intend continue with build).

Cmake did not find shm\_open in rt and proceeded to fail some tests.

Is rt a dependency I can update (and if yes where?) or is this an issue with the library I tried to download or a compatibility issue?

The failed tests were:

HAVE\_CXX\_FLAG\_WSHORTEN\_64\_TO\_32 - Failed, HAVE\_CXX\_FLAG\_WD654 - Failed, HAVE\_CXX\_FLAG\_WTHREAD\_SAFETY - Failed, Performing Test HAVE\_GNU\_POSIX\_REGEX – failed to compile, HAVE\_POSIX\_REGEX – failed to compile and HAVE\_PTHREAD\_AFFINITY – failed to compile

The full output was:

$ cmake ..  
– The C compiler identification is GNU 15.2.0  
– The CXX compiler identification is GNU 15.2.0  
– Detecting C compiler ABI info  
– Detecting C compiler ABI info - done  
– Check for working C compiler: C:/msys64/mingw64/bin/cc.exe - skipped  
– Detecting C compile features  
– Detecting C compile features - done  
– Detecting CXX compiler ABI info  
– Detecting CXX compiler ABI info - done  
– Check for working CXX compiler: C:/msys64/mingw64/bin/c++.exe - skipped  
– Detecting CXX compile features  
– Detecting CXX compile features - done  
– Building in Release mode  
– BUILD\_UNITTESTS: ON  
– BUILD\_EXAMPLES: ON  
– BUILD\_BENCHMARKS: ON  
– BUILD\_EXTRAS: OFF  
– BUILD\_STATIC: OFF  
– BUILD\_SHARED: ON  
– GIT\_SUBMOD\_AUTO: ON  
– WITH\_BE2: OFF  
– WITH\_BE4: OFF  
– WITH\_NTL: OFF  
– WITH\_TCM: OFF  
– WITH\_OPENMP: ON  
– NATIVE\_SIZE: 64  
– CKKS\_M\_FACTOR: 1  
– WITH\_NATIVEOPT: OFF  
– WITH\_COVTEST: OFF  
– WITH\_NOISE\_DEBUG: OFF  
– WITH\_REDUCED\_NOISE: OFF  
– USE\_MACPORTS: OFF  
– BUILTIN\_INFO\_AVAILABLE is defined  
\*\*\*\*\* INSTALL IS AT C:/Program Files (x86)/OpenFHE; to change, run cmake with -DCMAKE\_INSTALL\_PREFIX=/your/path  
– Architecture is x86\_64  
– Looking for sys/types.h  
– Looking for sys/types.h - found  
– Looking for stdint.h  
– Looking for stdint.h - found  
– Looking for stddef.h  
– Looking for stddef.h - found  
– Check size of \_\_int128  
– Check size of \_\_int128 - done  
– Check size of uint64\_t  
– Check size of uint64\_t - done  
– NATIVEINT is set to 64  
– MATHBACKEND is set to 4  
– MATHBACKEND set to 4. Setting WITH\_BE4 to ON  
– Found OpenMP\_C: -fopenmp (found version “4.5”)  
– Found OpenMP\_CXX: -fopenmp (found version “4.5”)  
– Found OpenMP: TRUE (found version “4.5”)  
– Found Git: C:/msys64/usr/bin/git.exe (found version “2.51.2”)  
– Submodule update  
Synchronizing submodule url for ‘third-party/cereal’  
Synchronizing submodule url for ‘third-party/google-benchmark’  
Synchronizing submodule url for ‘third-party/google-test’  
Synchronizing submodule url for ‘third-party/gperftools’  
– Google Benchmark version: v1.9.4, normalized to 1.9.4  
– Looking for shm\_open in rt  
– Looking for shm\_open in rt - not found  
– Performing Test HAVE\_CXX\_FLAG\_WALL  
– Performing Test HAVE\_CXX\_FLAG\_WALL - Success  
– Performing Test HAVE\_CXX\_FLAG\_WEXTRA  
– Performing Test HAVE\_CXX\_FLAG\_WEXTRA - Success  
– Performing Test HAVE\_CXX\_FLAG\_WSHADOW  
– Performing Test HAVE\_CXX\_FLAG\_WSHADOW - Success  
– Performing Test HAVE\_CXX\_FLAG\_WFLOAT\_EQUAL  
– Performing Test HAVE\_CXX\_FLAG\_WFLOAT\_EQUAL - Success  
– Performing Test HAVE\_CXX\_FLAG\_WOLD\_STYLE\_CAST  
– Performing Test HAVE\_CXX\_FLAG\_WOLD\_STYLE\_CAST - Success  
– Performing Test HAVE\_CXX\_FLAG\_WCONVERSION  
– Performing Test HAVE\_CXX\_FLAG\_WCONVERSION - Success  
– Performing Test HAVE\_CXX\_FLAG\_WERROR  
– Performing Test HAVE\_CXX\_FLAG\_WERROR - Success  
– Performing Test HAVE\_CXX\_FLAG\_WSUGGEST\_OVERRIDE  
– Performing Test HAVE\_CXX\_FLAG\_WSUGGEST\_OVERRIDE - Success  
– Performing Test HAVE\_CXX\_FLAG\_PEDANTIC  
– Performing Test HAVE\_CXX\_FLAG\_PEDANTIC - Success  
– Performing Test HAVE\_CXX\_FLAG\_PEDANTIC\_ERRORS  
– Performing Test HAVE\_CXX\_FLAG\_PEDANTIC\_ERRORS - Success  
– Performing Test HAVE\_CXX\_FLAG\_WSHORTEN\_64\_TO\_32  
– Performing Test HAVE\_CXX\_FLAG\_WSHORTEN\_64\_TO\_32 - Failed  
– Performing Test HAVE\_CXX\_FLAG\_FSTRICT\_ALIASING  
– Performing Test HAVE\_CXX\_FLAG\_FSTRICT\_ALIASING - Success  
– Performing Test HAVE\_CXX\_FLAG\_WNO\_DEPRECATED\_DECLARATIONS  
– Performing Test HAVE\_CXX\_FLAG\_WNO\_DEPRECATED\_DECLARATIONS - Success  
– Performing Test HAVE\_CXX\_FLAG\_WNO\_DEPRECATED  
– Performing Test HAVE\_CXX\_FLAG\_WNO\_DEPRECATED - Success  
– Performing Test HAVE\_CXX\_FLAG\_WSTRICT\_ALIASING  
– Performing Test HAVE\_CXX\_FLAG\_WSTRICT\_ALIASING - Success  
– Performing Test HAVE\_CXX\_FLAG\_WD654  
– Performing Test HAVE\_CXX\_FLAG\_WD654 - Failed  
– Performing Test HAVE\_CXX\_FLAG\_WTHREAD\_SAFETY  
– Performing Test HAVE\_CXX\_FLAG\_WTHREAD\_SAFETY - Failed  
– Performing Test HAVE\_CXX\_FLAG\_COVERAGE  
– Performing Test HAVE\_CXX\_FLAG\_COVERAGE - Success  
– Compiling and running to test HAVE\_STD\_REGEX  
– Performing Test HAVE\_STD\_REGEX – success  
– Compiling and running to test HAVE\_GNU\_POSIX\_REGEX  
– Performing Test HAVE\_GNU\_POSIX\_REGEX – failed to compile  
– Compiling and running to test HAVE\_POSIX\_REGEX  
– Performing Test HAVE\_POSIX\_REGEX – failed to compile  
– Compiling and running to test HAVE\_STEADY\_CLOCK  
– Performing Test HAVE\_STEADY\_CLOCK – success  
– Performing Test CMAKE\_HAVE\_LIBC\_PTHREAD  
– Performing Test CMAKE\_HAVE\_LIBC\_PTHREAD - Success  
– Found Threads: TRUE  
– Compiling and running to test HAVE\_PTHREAD\_AFFINITY  
– Performing Test HAVE\_PTHREAD\_AFFINITY – failed to compile  
– Configuring done (66.7s)  
– Generating done (4.4s)  
– Build files have been written to: C:/Users/Startklar/OpenFHE/openfhe-development/build

---

<div class="post-metadata">

### Author: ![fenrir](https://discourse.cmake.org/user_avatar/discourse.cmake.org/fenrir/32/734_2.png) [@fenrir](https://discourse.cmake.org/u/fenrir)
#### Post date: [November 13, 2025, 3:17pm UTC](https://discourse.cmake.org/t/shm-open-in-rt-not-found-when-trying-to-install-a-library-using-cmake/15303/2 "2025-11-13T15:17:42Z")

</div>

Failed tests are not necessairly a problem, unless you know they should succeed. The role of those tests is to figure out if certain things are available for usage.

Since CMake finished normaly, it’s probably OK.  
If you build it and run the tests without errors, then don’t sweat about some failed configure checks.

---

<div class="post-metadata">

### Author: ![Claas\_Machens](https://discourse.cmake.org/user_avatar/discourse.cmake.org/claas_machens/32/5893_2.png) [@Claas\_Machens](https://discourse.cmake.org/u/Claas_Machens)
#### Post date: [November 14, 2025, 9:33am UTC](https://discourse.cmake.org/t/shm-open-in-rt-not-found-when-trying-to-install-a-library-using-cmake/15303/3 "2025-11-14T09:33:04Z")

</div>

Thanks a lot for the help.

Make runs without errors, but the libraries tests throw a few errors. I can not find a solid documentation for the tests in the library right now, but since the tests refer to other libraries, is my asumption right that it’s probably something specific with the library I try to build?

C:/Users/Startklar/OpenFHE/openfhe-development/build/unittest/binfhe\_tests.exe: error while loading shared libraries: libOPENFHEcore.dll: cannot open shared object file: No such file or directory  
make[3]: \*\*\* [CMakeFiles/testall.dir/build.make:74: CMakeFiles/testall] Error 127  
make[2]: \*\*\* [CMakeFiles/Makefile2:761: CMakeFiles/testall.dir/all] Error 2  
make[1]: \*\*\* [CMakeFiles/Makefile2:768: CMakeFiles/testall.dir/rule] Error 2  
make: \*\*\* [Makefile:248: testall] Error 2

---

<div class="post-metadata">

### Author: ![ben.boeckel](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/b/ea5d25/32.png) [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)
#### Post date: [February 20, 2026, 2:30am UTC](https://discourse.cmake.org/t/shm-open-in-rt-not-found-when-trying-to-install-a-library-using-cmake/15303/4 "2026-02-20T02:30:50Z")

</div>

It looks like the project is not putting DLLs into position for the unit tests to use immediately. Usually they should all be put into `bin` or the environment set up for them to work.
