You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi
My enviroment consists of windows11 and rustrover. I have downloaded the sdl2 and sdl2-image libraries from scoop. When I try compile my SLD2 project with the "use-pkgconfig" feature It fails while compiling the sdl2-sys library.
I checked if pkg-config can find the SDL2 library .pc file, and it does.
C:\Users\Usuario>pkg-config --list-all
sdl2 sdl2 - Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer.
I also checked my PKG_CONFIG_PATH and it's also correct. They contain the .pc file.
The error I get is this
error: failed to run custom build command for `sdl2-sys v0.37.0`
note: To improve backtraces for build dependencies, set the CARGO_PROFILE_DEV_BUILD_OVERRIDE_DEBUG=true environment variable to enable debug information generation.
Caused by:
process didn't exit successfully: `C:\Users\Usuario\RustroverProjects\untitled\target\debug\build\sdl2-sys-d5bb1b9a2e6a9aa6\build-script-build` (exit code: 101)
--- stdout
cargo:include=C:\Users\Usuario\.cargo\registry\src\index.crates.io-6f17d22bba15001f\sdl2-sys-0.37.0\SDL\include
cargo:rerun-if-env-changed=SDL2_NO_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG_x86_64-pc-windows-msvc
cargo:rerun-if-env-changed=PKG_CONFIG_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=HOST_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_x86_64-pc-windows-msvc
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_x86_64-pc-windows-msvc
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64-pc-windows-msvc
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64_pc_windows_msvc
cargo:rerun-if-env-changed=HOST_PKG_CONFIG_SYSROOT_DIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
--- stderr
thread 'main' panicked at C:\Users\Usuario\.cargo\registry\src\index.crates.io-6f17d22bba15001f\sdl2-sys-0.37.0\build.rs:51:10:
called `Result::unwrap()` on an `Err` value:
pkg-config exited with status code 1
> PKG_CONFIG_PATH=C:\Users\Usuario\scoop\apps\sdl2\current\lib\pkgconfig PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 pkg-config --libs --cflags sdl2
The system library `sdl2` required by crate `sdl2-sys` was not found.
The file `sdl2.pc` needs to be installed and the PKG_CONFIG_PATH environment variable must contain its parent directory.
PKG_CONFIG_PATH contains the following:
- C
- \Users\Usuario\scoop\apps\sdl2\current\lib\pkgconfig
HINT: you may need to install a package such as sdl2, sdl2-dev or sdl2-devel.
stack backtrace:
0: std::panicking::begin_panic_handler
at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14\library/std\src\panicking.rs:662
1: core::panicking::panic_fmt
at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14\library/core\src\panicking.rs:74
2: core::result::unwrap_failed
at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14\library/core\src\result.rs:1677
3: std::rt::lang_start
4: std::rt::lang_start
5: std::rt::lang_start
6: std::rt::lang_start
7: std::rt::lang_start
8: std::rt::lang_start
9: std::rt::lang_start
10: std::rt::lang_start_internal::closure$2
at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14\library/std\src\rt.rs:143
11: std::panicking::try::do_call
at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14\library/std\src\panicking.rs:554
12: std::panicking::try
at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14\library/std\src\panicking.rs:518
13: std::panic::catch_unwind
at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14\library/std\src\panic.rs:345
14: std::rt::lang_start_internal
at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14\library/std\src\rt.rs:143
15: std::rt::lang_start
16: main
17: invoke_main
at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
18: __scrt_common_main_seh
at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
19: BaseThreadInitThunk
20: RtlUserThreadStart
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
I think what is happening (I'm new to rust so my apologies if i am missing something) is that PKG_CONFIG_PATH gets divided with the ":" character (like in unix systems) instead of a semicolon ";" like in windows systems. That is why the below lines state that there are two directories in the PKG_CONFIG_PATH: "C" and "\Users\Usuario\scoop\apps\sdl2\current\lib\pkgconfig" instead of "C:\Users\Usuario\scoop\apps\sdl2\current\lib\pkgconfig".
For reference, while trying to solve this issue I had installed sd2-image (with scoop), so when both directories were in the pkg-config system path the same ":" character delimiter happened.
thread 'main' panicked at C:\Users\Usuario\.cargo\registry\src\index.crates.io-6f17d22bba15001f\sdl2-sys-0.37.0\build.rs:51:10:
called `Result::unwrap()` on an `Err` value:
pkg-config exited with status code 1
> PKG_CONFIG_PATH=C:\Users\Usuario\scoop\apps\sdl2\current\lib\pkgconfig PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 pkg-config --libs --cflags sdl2
The system library `sdl2` required by crate `sdl2-sys` was not found.
The file `sdl2.pc` needs to be installed and the PKG_CONFIG_PATH environment variable must contain its parent directory.
PKG_CONFIG_PATH contains the following:
- C
- \Users\Usuario\scoop\apps\sdl2\current\lib\pkgconfig
HINT: you may need to install a package such as sdl2, sdl2-dev or sdl2-devel.
stack backtrace:
Thanks.
The text was updated successfully, but these errors were encountered:
Hi
My enviroment consists of windows11 and rustrover. I have downloaded the sdl2 and sdl2-image libraries from scoop. When I try compile my SLD2 project with the "use-pkgconfig" feature It fails while compiling the sdl2-sys library.
I checked if pkg-config can find the SDL2 library .pc file, and it does.
C:\Users\Usuario>pkg-config --list-all sdl2 sdl2 - Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer.
I also checked my PKG_CONFIG_PATH and it's also correct. They contain the .pc file.
The error I get is this
I think what is happening (I'm new to rust so my apologies if i am missing something) is that PKG_CONFIG_PATH gets divided with the ":" character (like in unix systems) instead of a semicolon ";" like in windows systems. That is why the below lines state that there are two directories in the PKG_CONFIG_PATH: "C" and "\Users\Usuario\scoop\apps\sdl2\current\lib\pkgconfig" instead of "C:\Users\Usuario\scoop\apps\sdl2\current\lib\pkgconfig".
For reference, while trying to solve this issue I had installed sd2-image (with scoop), so when both directories were in the pkg-config system path the same ":" character delimiter happened.
Thanks.
The text was updated successfully, but these errors were encountered: