microsoft / windows-drivers-rs

Platform that enables Windows driver development in Rust. Developed by Surface.
Apache License 2.0
1.49k stars 65 forks source link

Error 1119/1120 #215

Open henceiusegentoo opened 1 month ago

henceiusegentoo commented 1 month ago

Followed the instructions in the readme and now get the following error:

error: linking with `link.exe` failed: exit code: 1169
  |
  = note: "E:\\Program Files\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.38.33130\\bin\\HostX64\\x64\\link.exe" "/DEF:C:\\Users\\Jimmy\\AppData\\Local\\Temp\\rustcuiKNEY\\lib.def" "/NOLOGO" "C:\\Users\\Jimmy\\AppData\\Local\\Temp\\rustcuiKNEY\\symbols.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.02h8u4mswl1ookgpj5l4kmeuh.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.37wg5pg35kstchxylvzvkwcz8.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.3r1bg36b6oy3zuj4c94w2vaz1.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.584u3kc340u9tfr7xnkxago0a.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.7brs6hr0htsgsjf94rg5k0r10.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.9pl0nzfkf1nlz55feg4y956lx.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.bj1hgsmbgknva189948yaqq5i.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.egy5ollrw6r7icq9baw6qofyw.rcgu.o" "/LIBPATH:C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps" "/LIBPATH:E:\\Program Files\\Windows Kits\\10\\Lib\\10.0.26100.0\\km\\x64" "/LIBPATH:E:\\Program Files\\Windows Kits\\10\\Lib\\wdf\\kmdf\\x64\\1.33" "/LIBPATH:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\libwdk_alloc-65c9a314840e6926.rlib" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\libwdk_sys-3fa76e0020e7441d.rlib" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\liblazy_static-6c50b0efb9151bac.rlib" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\libspin-2a11f723a40e5af1.rlib" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\libwdk_panic-fbe39b7b83cbc654.rlib" "C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\librustc_std_workspace_core-d08e4e7d05aff086.rlib" "C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcore-89ef43c30f9b928e.rlib" "C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcompiler_builtins-1426abde5263ac46.rlib" "BufferOverflowFastFailK.lib" "ntoskrnl.lib" "hal.lib" "wmilib.lib" "WdfLdr.lib" "WdfDriverEntry.lib" "/defaultlib:libcmt" "/NXCOMPAT" "/LIBPATH:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "/OUT:C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.dll" "/OPT:REF,NOICF" "/DLL" "/IMPLIB:C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.dll.lib" "/DEBUG" "/PDBALTPATH:%_PDB%" "/NATVIS:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\intrinsic.natvis" "/NATVIS:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\liballoc.natvis" "/NATVIS:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libcore.natvis" "/NATVIS:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libstd.natvis"
  = note: libvcruntime.lib(risctrnsctrl.obj) : error LNK2005: __CxxFrameHandler3 already defined in libwdk_sys-3fa76e0020e7441d.rlib(wdk_sys-3fa76e0020e7441d.wdk_sys.46b16dd889c0d8d-cgu.0.rcgu.o)
             Creating library C:\Users\Jimmy\Programmieren\lsrpm-wpm\target\debug\deps\lsrpm_wpm.dll.lib and object C:\Users\Jimmy\Programmieren\lsrpm-wpm\target\debug\deps\lsrpm_wpm.dll.exp
          C:\Users\Jimmy\Programmieren\lsrpm-wpm\target\debug\deps\lsrpm_wpm.dll : fatal error LNK1169: one or more multiply defined symbols found

Edit: Now getting Error 1119 and 1120 instead of 1169 after cloning the repo instead of using the version on crates

jimmy@DESKTOP-78UUKHV C:\Users\Jimmy\Programmieren\lsrpm-wpm>cargo make
[cargo-make] INFO - cargo make 0.37.16
[cargo-make] INFO - Execute Command: "rust-script" "target\\_cargo_make_temp\\persisted_scripts\\D4060E7434B3779E78A683E
8BA00D06A5D08BE8C95BC432359E22F06CB30EF1C.rs"
[cargo-make] INFO - Calling cargo metadata to extract project info
[cargo-make] INFO - Cargo metadata done
[cargo-make] INFO - Project: lsrpm-wpm
[cargo-make] INFO - Build File: Makefile.toml
[cargo-make] INFO - Task: default
[cargo-make] INFO - Profile: development
[cargo-make] INFO - Running Task: build
[cargo-make] INFO - Execute Command: "cargo" "build"
   Compiling lsrpm-wpm v0.1.0 (C:\Users\Jimmy\Programmieren\lsrpm-wpm)
warning: unused variable: `driver`
  --> src\lib.rs:21:4
   |
21 |    driver: &mut DRIVER_OBJECT,
   |    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
   |
   = note: `#[warn(unused_variables)]` on by default

warning: unused variable: `registry_path`
  --> src\lib.rs:22:4
   |
22 |    registry_path: PCUNICODE_STRING,
   |    ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_registry_path`

error: linking with `link.exe` failed: exit code: 1120
  |
  = note: "E:\\Program Files\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.38.33130\\bin\\HostX64\\x64
\\link.exe" "/DEF:C:\\Users\\Jimmy\\AppData\\Local\\Temp\\rustc2XKnT3\\lib.def" "/NOLOGO" "C:\\Users\\Jimmy\\AppData\\Lo
cal\\Temp\\rustc2XKnT3\\symbols.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.1yu6mj81t
64o5w3hsp6v8t4lu.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.50425fnnd5x103lajac
b0vlbg.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.5rpuwtkk81kdq42lp255pm7ww.rcg
u.o" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.6fso182emtqj1e5qqkphrahjg.rcgu.o" "C:\\
Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.6v8aed1hqo0n8627tt2q152lh.rcgu.o" "C:\\Users\\Jim
my\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.aqns4pw3sr95spj0opaq2l52u.rcgu.o" "C:\\Users\\Jimmy\\Progra
mmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.bfwx285owjzf1jkc53pd9isxf.rcgu.o" "C:\\Users\\Jimmy\\Programmieren\\l
srpm-wpm\\target\\debug\\deps\\lsrpm_wpm.eljerpgbmndqumch652dhz7gi.rcgu.o" "/LIBPATH:C:\\Users\\Jimmy\\Programmieren\\ls
rpm-wpm\\target\\debug\\deps" "/LIBPATH:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustl
ib\\x86_64-pc-windows-msvc\\lib" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\libwdk_alloc-6dc63c08
db77b014.rlib" "C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\libwdk_sys-bda3db43607e522b.rlib" "C:\\
Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\libwdk_panic-65f5f3bb8c0a6d9d.rlib" "C:\\Users\\Jimmy\\.rus
tup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\librustc_std_workspace_core-d
08e4e7d05aff086.rlib" "C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-win
dows-msvc\\lib\\libcore-89ef43c30f9b928e.rlib" "C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\li
b\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcompiler_builtins-1426abde5263ac46.rlib" "/defaultlib:libcmt" "/NXCOMPAT" "/
LIBPATH:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib"
 "/OUT:C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.dll" "/OPT:REF,NOICF" "/DLL" "/IMPLIB:
C:\\Users\\Jimmy\\Programmieren\\lsrpm-wpm\\target\\debug\\deps\\lsrpm_wpm.dll.lib" "/DEBUG" "/PDBALTPATH:%_PDB%" "/NATV
IS:C:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\intrinsic.natvis" "/NATVIS:C
:\\Users\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\liballoc.natvis" "/NATVIS:C:\\Us
ers\\Jimmy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libcore.natvis" "/NATVIS:C:\\Users\\J
immy\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libstd.natvis"
  = note: libvcruntime.lib(risctrnsctrl.obj) : error LNK2005: __CxxFrameHandler3 already defined in libwdk_sys-bda3db436
07e522b.rlib(wdk_sys-bda3db43607e522b.ex7r3fpbfn2hmoak4d4javwnc.rcgu.o)
             Creating library C:\Users\Jimmy\Programmieren\lsrpm-wpm\target\debug\deps\lsrpm_wpm.dll.lib and object C:\U
sers\Jimmy\Programmieren\lsrpm-wpm\target\debug\deps\lsrpm_wpm.dll.exp
          libwdk_alloc-6dc63c08db77b014.rlib(wdk_alloc-6dc63c08db77b014.bzlaygjqrjh2csses4c9s4hfk.rcgu.o) : error LNK201
9: unresolved external symbol ExAllocatePool2 referenced in function _ZN89_$LT$wdk_alloc..kernel_mode..WdkAllocator$u20$
as$u20$core..alloc..global..GlobalAlloc$GT$5alloc17h0cdeadab9769079eE
          libwdk_alloc-6dc63c08db77b014.rlib(wdk_alloc-6dc63c08db77b014.bzlaygjqrjh2csses4c9s4hfk.rcgu.o) : error LNK201
9: unresolved external symbol ExFreePool referenced in function _ZN89_$LT$wdk_alloc..kernel_mode..WdkAllocator$u20$as$u2
0$core..alloc..global..GlobalAlloc$GT$7dealloc17h340a5fa061bf23d2E
          C:\Users\Jimmy\Programmieren\lsrpm-wpm\target\debug\deps\lsrpm_wpm.dll : fatal error LNK1120: 2 unresolved ext
ernals

warning: `lsrpm-wpm` (lib) generated 2 warnings
error: could not compile `lsrpm-wpm` (lib) due to 1 previous error; 2 warnings emitted
Error while executing command, exit code: 101