-
Notifications
You must be signed in to change notification settings - Fork 66
Description
After trying to update the dependencies of heed, I discovered that the CI wasn't compiling on Windows with the following error message. I searched the internet for this, but I found nothing. So, I removed the dependencies bump, and the same issue remained. The CI just decided to break by itself.
I checked the Rust toolchain and switched to dtolnay's GitHub toolchain action to make sure we have the same as the Meilisearch one, because there, we can compile Meilisearch on Windows even though it depends on heed.
Then I decided to see if LMDB could compile by itself, so I created another test that ran the Makefile. Surprise, it compiles perfectly and doesn't throw any error messages (only warnings). I reviewed the makefile and found that it uses gcc, so I tried gcc in the lmdb-master-sys/build.rs file, but it threw more errors than before.
Now, I'm stuck with this issue...
error: linking with `link.exe` failed: exit code: 1120
|
= note: "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.44.35207\\bin\\HostX64\\x64\\link.exe" "/NOLOGO" "C:\\Users\\RUNNER~1\\AppData\\Local\\Temp\\rustcGkU4sz\\symbols.o" "<2 object files omitted>" "<sysroot>\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib/{libtest-*,libgetopts-*,libunicode_width-*,librustc_std_workspace_std-*}.rlib" "D:\\a\\heed\\heed\\target\\debug\\deps/{liblmdb_master_sys-6083ee47abdc5425.rlib,liblibc-3a18e6fb6f4c3d67.rlib}.rlib" "<sysroot>\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib/{libstd-*,libpanic_unwind-*,libwindows_targets-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libunwind-*,libcfg_if-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "kernel32.lib" "legacy_stdio_definitions.lib" "kernel32.lib" "kernel32.lib" "kernel32.lib" "ntdll.lib" "userenv.lib" "ws2_32.lib" "dbghelp.lib" "/defaultlib:msvcrt" "/NXCOMPAT" "/LIBPATH:D:\\a\\heed\\heed\\target\\debug\\build\\lmdb-master-sys-127a169bfd1e468f\\out" "/LIBPATH:C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.44.35207\\atlmfc\\lib\\x64" "/OUT:D:\\a\\heed\\heed\\target\\debug\\deps\\simple-97b217c51fc5f437.exe" "/OPT:REF,NOICF" "/DEBUG" "/PDBALTPATH:%_PDB%" "/NATVIS:<sysroot>\\lib\\rustlib\\etc\\intrinsic.natvis" "/NATVIS:<sysroot>\\lib\\rustlib\\etc\\liballoc.natvis" "/NATVIS:<sysroot>\\lib\\rustlib\\etc\\libcore.natvis" "/NATVIS:<sysroot>\\lib\\rustlib\\etc\\libstd.natvis"
= note: some arguments are omitted. use `--verbose` to show all linker arguments
= note: liblmdb_master_sys-6083ee47abdc5425.rlib(535b1ff7273e4654-mdb.o) : error LNK2019: unresolved external symbol __imp_InitializeSecurityDescriptor referenced in function mdb_env_setup_locks␍
liblmdb_master_sys-6083ee47abdc5425.rlib(535b1ff7273e4654-mdb.o) : error LNK2019: unresolved external symbol __imp_SetSecurityDescriptorDacl referenced in function mdb_env_setup_locks␍
D:\a\heed\heed\target\debug\deps\simple-97b217c51fc5f437.exe : fatal error LNK1120: 2 unresolved externals␍