hot-lib-reloader-rs
hot-lib-reloader-rs copied to clipboard
Different Windows issue: "The specified procedure could not be found"
Hey all,
I've been getting the error above any time I try to use the hot reloading in the nannou example (and my own nannou app).
I was able to get the bevy example to run and pick up changes. I've tried to find a significant difference between the two, but nothing I've found has worked.
I've tried copying over the .cargo/
directory, changing the toolchain, renaming files, probably other steps I've forgotten.
This is on Windows 10 Pro 22H2 build 19045.2728. Let me know if any other system information would be helpful.
I was able to repro this with:
-
git clone https://github.com/rksm/hot-lib-reloader-rs.git hlr-repro
-
cd .\hlr-repro\examples\nannou-vector-field\
-
cargo watch -w lib -x "build -p lib"
(separate PowerShell terminal) -
$env:RUST_BACKTRACE="full"; cargo run --features reload --target-dir "target-bin"
Full error
$env:RUST_BACKTRACE="full"; cargo run --features reload --target-dir "target-bin"
Finished dev [optimized + debuginfo] target(s) in 0.51s
Running `target-bin\debug\nannou-vector-field.exe`
thread 'main' panicked at 'failed to create hot reload loader: LibraryLoadError(LoadLibraryExW { source: Os { code: 127, kind: Uncategorized, message: "The specified procedure could not be found." } })', src\main.rs:3:1
stack backtrace:
0: 0x7ffb4b789d02 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb6eec21cb8e3d1b
1: 0x7ffb4b7c570b - core::fmt::write::h3f34d6e08b5a11e8
2: 0x7ffb4b77cdfa - <std::io::IoSlice as core::fmt::Debug>::fmt::h1d8b4e60e4c9e548
3: 0x7ffb4b789a4b - std::sys::common::alloc::realloc_fallback::h258dcd65da5985d2
4: 0x7ffb4b78d3f9 - std::panicking::default_hook::h90b70b966050cb60
5: 0x7ffb4b78d07b - std::panicking::default_hook::h90b70b966050cb60
6: 0x7ffb4b78dd30 - std::panicking::rust_panic_with_hook::h1d50ae3462f62f01
7: 0x7ffb4b78dabe - <std::panicking::begin_panic_handler::StrPanicPayload as core::panic::BoxMeUp>::get::h79e1803705c718ce
8: 0x7ffb4b78a9ff - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb6eec21cb8e3d1b
9: 0x7ffb4b78d770 - rust_begin_unwind
10: 0x7ffb4b7fb3d5 - core::panicking::panic_fmt::haf2d819891c687b2
11: 0x7ffb4b7fb8f6 - core::result::unwrap_failed::h2ee1097ec86ca0b0
12: 0x7ff73c9f4e3f - enum2$<core::result::Result<hot_lib_reloader::lib_reloader::LibReloader,enum2$<hot_lib_reloader::error::HotReloaderError> > >::expect
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\core\src\result.rs:1069
13: 0x7ff73c9f4e3f - nannou_vector_field::hot_lib::__lib_loader::closure$0
at C:\Users\DrJKL\Documents\Projects\hlr-repro\examples\nannou-vector-field\src\main.rs:3 14: 0x7ff73c9f4e3f - std::sync::once::impl$2::call_once::closure$0<nannou_vector_field::hot_lib::__lib_loader::closure_env$0>
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\sync\once.rs:143
15: 0x7ffb4b7fa905 - std::sys_common::once::queue::Once::call::hede37d70a4218ee8
16: 0x7ff73c9f580c - std::sync::once::Once::call_once
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\sync\once.rs:143
17: 0x7ff73c9f580c - nannou_vector_field::hot_lib::__lib_loader
at C:\Users\DrJKL\Documents\Projects\hlr-repro\examples\nannou-vector-field\src\main.rs:3 18: 0x7ff73c9f580c - nannou_vector_field::hot_lib::update
at C:\Users\DrJKL\Documents\Projects\hlr-repro\examples\nannou-vector-field\src\main.rs:3 19: 0x7ff73c9f0c0c - nannou_vector_field::update
at C:\Users\DrJKL\Documents\Projects\hlr-repro\examples\nannou-vector-field\src\main.rs:20
20: 0x7ff73c9e5882 - nannou::app::apply_update<lib::Model,enum2$<nannou::event::Event> >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\nannou-0.18.1\src\app.rs:1387
21: 0x7ff73c9f27f2 - nannou::app::run_loop::closure$0
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\nannou-0.18.1\src\app.rs:1104
22: 0x7ff73c9f27f2 - winit::platform_impl::platform::event_loop::impl$2::run_return::closure$0<tuple$<>,nannou::app::run_loop::closure_env$0<lib::Model,enum2$<nannou::event::Event> > >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:206
23: 0x7ffb4838212b - alloc::boxed::impl$46::call_mut
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\alloc\src\boxed.rs:1995
24: 0x7ffb4838212b - winit::platform_impl::platform::event_loop::runner::impl$3::call_event_handler::closure$0
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop\runner.rs:245
25: 0x7ffb4838212b - core::panic::unwind_safe::impl$23::call_once<tuple$<>,winit::platform_impl::platform::event_loop::runner::impl$3::call_event_handler::closure_env$0<tuple$<> > >
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\core\src\panic\unwind_safe.rs:271
26: 0x7ffb4841697e - std::panicking::try::do_call
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\panicking.rs:483
27: 0x7ffb4841697e - std::panicking::try
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\panicking.rs:447
28: 0x7ffb4841697e - std::panic::catch_unwind
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\panic.rs:140
29: 0x7ffb4841697e - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple$<> >::catch_unwind
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop\runner.rs:152
30: 0x7ffb4841697e - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple$<> >::call_event_handler<tuple$<> >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop\runner.rs:239
31: 0x7ffb484160d0 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple$<> >::move_state_to<tuple$<> >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop\runner.rs:369
32: 0x7ffb483fa3fa - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple$<> >::main_events_cleared
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop\runner.rs:227
33: 0x7ffb483fa3fa - winit::platform_impl::platform::event_loop::flush_paint_messages<tuple$<> >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:703
34: 0x7ffb48385a87 - winit::platform_impl::platform::event_loop::public_window_callback_inner::closure$0<tuple$<> >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:891
35: 0x7ffb48415cf2 - core::ops::function::FnOnce::call_once
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\core\src\ops\function.rs:250
36: 0x7ffb48415cf2 - core::panic::unwind_safe::impl$23::call_once
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\core\src\panic\unwind_safe.rs:271
37: 0x7ffb48415cf2 - std::panicking::try::do_call
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\panicking.rs:483
38: 0x7ffb48415cf2 - std::panicking::try
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\panicking.rs:447
39: 0x7ffb48415cf2 - std::panic::catch_unwind
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\panic.rs:140
40: 0x7ffb48415cf2 - winit::platform_impl::platform::event_loop::runner::EventLoopRunner<tuple$<> >::catch_unwind<tuple$<>,isize,winit::platform_impl::platform::event_loop::public_window_callback_inner::closure_env$0<tuple$<> > >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop\runner.rs:152
41: 0x7ffb483fa594 - winit::platform_impl::platform::event_loop::public_window_callback_inner
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:1980
42: 0x7ffb483fa594 - winit::platform_impl::platform::event_loop::public_window_callback<tuple$<> >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:791
43: 0x7ffba279d3b6 - DefSubclassProc
44: 0x7ffba279d26c - DefSubclassProc
45: 0x7ffbb66ae7e8 - CallWindowProcW
46: 0x7ffbb66ae47e - CallWindowProcW
47: 0x7ffb4e8ff0f0 - glPushClientAttrib
48: 0x7ffbb66ae7e8 - CallWindowProcW
49: 0x7ffbb66ae36c - DispatchMessageW
50: 0x7ffbb66c0c23 - SendMessageTimeoutW
51: 0x7ffbb85b0ef4 - KiUserCallbackDispatcher
52: 0x7ffbb5c11704 - NtUserDispatchMessage
53: 0x7ffbb66ae27a - DispatchMessageW
54: 0x7ff73c9e10a4 - winit::platform_impl::platform::event_loop::EventLoop<tuple$<> >::run_return
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:221
55: 0x7ff73c9e10a4 - winit::platform_impl::platform::event_loop::EventLoop<tuple$<> >::run<tuple$<>,nannou::app::run_loop::closure_env$0<lib::Model,enum2$<nannou::event::Event> > >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:191
56: 0x7ff73c9e5762 - winit::event_loop::EventLoop<tuple$<> >::run<tuple$<>,nannou::app::run_loop::closure_env$0<lib::Model,enum2$<nannou::event::Event> > >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\event_loop.rs:154
57: 0x7ff73c9e6071 - nannou::app::Builder<lib::Model,enum2$<nannou::event::Event> >::run<lib::Model,enum2$<nannou::event::Event> >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\nannou-0.18.1\src\app.rs:494
58: 0x7ff73c9f0c97 - nannou_vector_field::main
at C:\Users\DrJKL\Documents\Projects\hlr-repro\examples\nannou-vector-field\src\main.rs:24
59: 0x7ff73c9e3e76 - core::ops::function::FnOnce::call_once
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\core\src\ops\function.rs:250
60: 0x7ff73c9e3e76 - std::sys_common::backtrace::__rust_begin_short_backtrace<void (*)(),tuple$<> >
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\sys_common\backtrace.rs:121
61: 0x7ff73c9f715c - std::rt::lang_start::closure$0<tuple$<> >
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\rt.rs:166
62: 0x7ffb4b76db4e - std::rt::lang_start_internal::hca4a39d2276f2843
63: 0x7ff73c9f0ccc - main
64: 0x7ff73ca257f0 - invoke_main
at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
65: 0x7ff73ca257f0 - __scrt_common_main_seh
at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
66: 0x7ffbb6577614 - BaseThreadInitThunk
67: 0x7ffbb85626a1 - RtlUserThreadStart
error: process didn't exit successfully: `target-bin\debug\nannou-vector-field.exe` (exit code: 101)p\runner.rs:152
41: 0x7ffb483fa594 - winit::platform_impl::platform::event_loop::public_window_callback_inner
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:1980
42: 0x7ffb483fa594 - winit::platform_impl::platform::event_loop::public_window_callback >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:791
43: 0x7ffba279d3b6 - DefSubclassProc
44: 0x7ffba279d26c - DefSubclassProc
45: 0x7ffbb66ae7e8 - CallWindowProcW
46: 0x7ffbb66ae47e - CallWindowProcW
47: 0x7ffb4e8ff0f0 - glPushClientAttrib
48: 0x7ffbb66ae7e8 - CallWindowProcW
49: 0x7ffbb66ae36c - DispatchMessageW
50: 0x7ffbb66c0c23 - SendMessageTimeoutW
51: 0x7ffbb85b0ef4 - KiUserCallbackDispatcher
52: 0x7ffbb5c11704 - NtUserDispatchMessage
53: 0x7ffbb66ae27a - DispatchMessageW
54: 0x7ff73c9e10a4 - winit::platform_impl::platform::event_loop::EventLoop >::run_return
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:221
55: 0x7ff73c9e10a4 - winit::platform_impl::platform::event_loop::EventLoop >::run,nannou::app::run_loop::closure_env$0<:model> > >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\platform_impl\windows\event_loop.rs:191
56: 0x7ff73c9e5762 - winit::event_loop::EventLoop >::run,nannou::app::run_loop::closure_env$0<:model> > >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\winit-0.25.0\src\event_loop.rs:154
57: 0x7ff73c9e6071 - nannou::app::Builder<:model> >::run<:model> >
at C:\Users\DrJKL\.cargo\registry\src\github.com-1ecc6299db9ec823\nannou-0.18.1\src\app.rs:494
58: 0x7ff73c9f0c97 - nannou_vector_field::main
at C:\Users\DrJKL\Documents\Projects\hlr-repro\examples\nannou-vector-field\src\main.rs:24
59: 0x7ff73c9e3e76 - core::ops::function::FnOnce::call_once
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\core\src\ops\function.rs:250
60: 0x7ff73c9e3e76 - std::sys_common::backtrace::__rust_begin_short_backtrace >
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\sys_common\backtrace.rs:121
61: 0x7ff73c9f715c - std::rt::lang_start::closure$0 >
at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0\library\std\src\rt.rs:166
62: 0x7ffb4b76db4e - std::rt::lang_start_internal::hca4a39d2276f2843
63: 0x7ff73c9f0ccc - main
64: 0x7ff73ca257f0 - invoke_main
at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
65: 0x7ff73ca257f0 - __scrt_common_main_seh
at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
66: 0x7ffbb6577614 - BaseThreadInitThunk
67: 0x7ffbb85626a1 - RtlUserThreadStart
error: process didn't exit successfully: `target-bin\debug\nannou-vector-field.exe` (exit code: 101)