Rust-SDL2 / rust-sdl2

SDL2 bindings for Rust
MIT License
2.71k stars 466 forks source link

"Windows, Linux and macOS with vcpkg installation" instructions failing #1336

Open Swiftloke opened 1 year ago

Swiftloke commented 1 year ago

Seems to be upstream issue with cargo-vcpkg here. My build fails like this:

cargo vcpkg build
     Cloning https://github.com/microsoft/vcpkg
    Checkout rev 261c458af6e3eed5d099144aff95d2b5035f656b
   Compiling vcpkg
  Installing sdl2 sdl2-image[libjpeg-turbo,tiff,libwebp] sdl2-ttf sdl2-gfx sdl2-mixer sdl2
   Compiling brotli (triplet x64-windows-static-md)
-- stdout --

-- stderr --

cargo-vcpkg: failed

You can resolve this issue by updating to a newer release metadata as described in my comment here.

Cobrand commented 11 months ago

Could you please check with the master version if it's solved now? I updated the vspkg ver to the 2023.08 release

timelessnesses commented 8 months ago

Could you please check with the master version if it's solved now? I updated the vspkg ver to the 2023.08 release

I built my SDL2 application and it seems to still failed to statically link with SDL2-TTF and I don't really know why
Here's console log:

[opengl_clockery] cargo build -r                                                                    23:47:23  ☁  rust ☂ ✖ ⚡ ✭
   Compiling opengl_clockery v0.1.0 (/home/timelessnesses/opengl_clockery)
error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/home/timelessnesses/.local/share/pnpm:/home/timelessnesses/.cargo/bin:/home/timelessnesses/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/timelessnesses/.local/bin:/home/timelessnesses/.local/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcMKAJXs/symbols.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.00.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.01.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.02.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.03.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.04.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.05.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.06.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.07.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.08.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.09.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.10.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.11.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.12.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.13.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.2aay9k1mcduuvwyu.rcgu.o" "-Wl,--as-needed" "-L" "/home/timelessnesses/opengl_clockery/target/release/deps" "-L" "/home/timelessnesses/opengl_clockery/target/release/build/sdl2-sys-417363f95b413611/out/lib64" "-L" "/home/timelessnesses/opengl_clockery/target/release/build/sdl2-sys-417363f95b413611/out/lib" "-L" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/home/timelessnesses/opengl_clockery/target/release/deps/libslicestring-5240ecaddc405142.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libserde_json-42422fe36329d9e3.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libryu-f99f7f8d4e092a35.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libitoa-c407ab57e42ededc.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libserde-e22a67f42977a034.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libsdl2-26d5ce050689818d.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libsdl2_sys-3435c5cdc6eb6c36.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libbitflags-5c2982a06cf4933f.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/liblazy_static-ef9a75de74682d63.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/liblibc-96ccffe077c244f4.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libchrono_tz-625c2625116b6242.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libphf-ae6c31303c441323.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libphf_shared-0c4a5903451eae1d.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libsiphasher-69b96e05790dc495.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libchrono-471569f25453024f.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libnum_traits-7edc964d0a4f9d6f.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libiana_time_zone-89f47c7a0bae67e0.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-a6cca7f961d55588.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-aa642aa6ec3db8f0.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-d6b63c820b864a0a.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-a10c4cbf63715a75.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-7139c4cb779cfd1c.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-a4a26771e4788605.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-ee5361c8033cee99.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-c923c480edb3630b.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-c1ac72a170701ba0.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-1c6bd346cde09b59.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-004504e57af02cbd.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-55030b204f27e805.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-1dccf9ae3a25ee58.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-368effeb3688f9f2.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-cdb0a3d901b8e006.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-7c1ddbe4d1f3191d.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-cf0dfa90df3d5ac6.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-13c86eb6ecb8949f.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-df709554867cb333.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-nodefaultlibs"
  = note: /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-ff1d697a878737ac.opengl_clockery.ee4812b9a04b6be0-cgu.09.rcgu.o: in function `sdl2::ttf::font::PartialRendering::blended':
          /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/font.rs:192: undefined reference to `TTF_RenderText_Blended'
          /usr/bin/ld: /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/font.rs:189: undefined reference to `TTF_RenderUTF8_Blended'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/release/deps/libsdl2-26d5ce050689818d.rlib(sdl2-26d5ce050689818d.sdl2.b1465f842bf581ae-cgu.12.rcgu.o): in function `<sdl2::ttf::context::Sdl2TtfContext as core::ops::drop::Drop>::drop':
          /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/context.rs:23: undefined reference to `TTF_Quit'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/release/deps/libsdl2-26d5ce050689818d.rlib(sdl2-26d5ce050689818d.sdl2.b1465f842bf581ae-cgu.12.rcgu.o): in function `sdl2::ttf::context::Sdl2TtfContext::load_font_from_rwops':
          /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/context.rs:56: undefined reference to `TTF_OpenFontRW'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/release/deps/libsdl2-26d5ce050689818d.rlib(sdl2-26d5ce050689818d.sdl2.b1465f842bf581ae-cgu.12.rcgu.o): in function `sdl2::ttf::context::init':
          /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/context.rs:122: undefined reference to `TTF_WasInit'
          /usr/bin/ld: /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/context.rs:124: undefined reference to `TTF_Init'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/release/deps/libsdl2-26d5ce050689818d.rlib(sdl2-26d5ce050689818d.sdl2.b1465f842bf581ae-cgu.15.rcgu.o): in function `<sdl2::ttf::font::Font as core::ops::drop::Drop>::drop':
          /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/font.rs:250: undefined reference to `TTF_WasInit'
          /usr/bin/ld: /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/font.rs:251: undefined reference to `TTF_CloseFont'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/release/deps/libsdl2-26d5ce050689818d.rlib(sdl2-26d5ce050689818d.sdl2.b1465f842bf581ae-cgu.15.rcgu.o): in function `sdl2::ttf::font::Font::size_of':
          /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/font.rs:352: undefined reference to `TTF_SizeUTF8'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/release/deps/libsdl2-26d5ce050689818d.rlib(sdl2-26d5ce050689818d.sdl2.b1465f842bf581ae-cgu.15.rcgu.o): in function `sdl2::ttf::font::Font::height':
          /home/timelessnesses/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sdl2-0.36.0/src/sdl2/ttf/font.rs:445: undefined reference to `TTF_FontHeight'
          collect2: error: ld returned 1 exit status

  = note: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified
  = note: use the `-l` flag to specify native libraries to link
  = note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#cargorustc-link-libkindname)

warning: `opengl_clockery` (bin "opengl_clockery") generated 3 warnings
error: could not compile `opengl_clockery` (bin "opengl_clockery") due to previous error; 3 warnings emitted   

Here's my own Cargo.toml file:

[package]
name = "opengl_clockery"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
# bitflags = "2.4.1" ./lol.png
chrono = "0.4.31"
chrono-tz = "0.8.4"
sdl2 = { version = "0.36.0", features = ["use-vcpkg", "ttf", "static-link", "bundled"], default-features = false }
serde_json = "1.0.108"
slicestring = "0.3.3"

[profile.release]
opt-level = 3
debug = true

[package.metadata.vcpkg]
dependencies = ["sdl2", "sdl2-ttf"]
git = "https://github.com/microsoft/vcpkg"
rev = "c8696863d371ab7f46e213d8f5ca923c4aef2a00"

[package.metadata.vcpkg.target]
x86_64-pc-windows-msvc = { triplet = "x64-windows-static-release" }
x86_64-unknown-linux-gnu = { triplet = "x64-linux" }
Cobrand commented 8 months ago

@timelessnesses

There are a few things that don't make sense: the features vcpkg + bundled + ttf are not compatible.

timelessnesses commented 8 months ago

@timelessnesses

There are a few things that don't make sense: the features vcpkg + bundled + ttf are not compatible.

  • bundled + ttf is not supported
  • use-vcpkg + bundled do not make sense. bundled compiles SDL2 from the source, and vcpkg downloads the dll binaries from vcpkg. Which one do you want?

I think I didn't read the README properly and I skipped some part of it.
Anyways after I change my Cargo.toml to this:

[package]
name = "opengl_clockery"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
# bitflags = "2.4.1" ./lol.png
chrono = "0.4.31"
chrono-tz = "0.8.4"
clap = { version = "4.4.11", features = ["derive"] }
sdl2 = { version = "0.36.0", features = ["use-vcpkg", "ttf", "static-link"], default-features = false }
serde_json = "1.0.108"
slicestring = "0.3.3"

[profile.release]
opt-level = 3
debug = false

[package.metadata.vcpkg]
dependencies = ["sdl2", "sdl2-ttf", "sdl2-image[libjpeg-turbo,tiff,libwebp]"]
git = "https://github.com/microsoft/vcpkg"
rev = "c8696863d371ab7f46e213d8f5ca923c4aef2a00"

[package.metadata.vcpkg.target]
x86_64-pc-windows-msvc = { triplet = "x64-windows-static-md" }
x86_64-unknown-linux-gnu = { triplet = "x64-linux" }

Now I have linking error for the libpng now.

   Compiling opengl_clockery v0.1.0 (/home/timelessnesses/opengl_clockery)
error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/home/timelessnesses/.local/share/pnpm:/home/timelessnesses/.cargo/bin:/home/timelessnesses/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/timelessnesses/.local/bin:/home/timelessnesses/.local/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcjocRNb/symbols.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.00.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.01.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.02.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.03.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.04.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.05.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.06.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.07.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.08.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.09.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.10.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.11.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.12.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.13.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.14.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.opengl_clockery.73ebf0f61d8331e6-cgu.15.rcgu.o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11.8zi1bgtyuaixu2i.rcgu.o" "-Wl,--as-needed" "-L" "/home/timelessnesses/opengl_clockery/target/release/deps" "-L" "/home/timelessnesses/opengl_clockery/target/vcpkg/installed/x64-linux/lib" "-L" "/home/timelessnesses/opengl_clockery/target/vcpkg/installed/x64-linux/lib" "-L" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/home/timelessnesses/opengl_clockery/target/release/deps/libslicestring-1dd5e6f2b17a8bbe.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libserde_json-2bb7295228147dff.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libryu-5b16fc6beaf7cb81.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libitoa-bcae1ea3c60db8bc.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libserde-1d31815dc466656a.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libsdl2-4e1d4329316a5709.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libsdl2_sys-c6a1d5adece1ea40.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libbitflags-b6cb36d335b1d5f4.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/liblazy_static-0a609b9cc9e72b11.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/liblibc-b96f0d8e523f5620.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libclap-5ad947e348bbeab0.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libclap_builder-9d4ccaf8697c9462.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libstrsim-55fa8c781e521c04.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libanstream-71f4c7276e7343d7.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libanstyle_query-a1c71e4073b566cc.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libcolorchoice-9475966e8c319571.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libanstyle_parse-69ec077f82faa693.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libutf8parse-9a05541fbc48d3de.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libclap_lex-06c5b5a676c288c4.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libanstyle-b8fab8a85bd6d1af.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libchrono_tz-49db8f4fc329c9fe.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libphf-0c7088d8de8ee352.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libphf_shared-92f1d1cebd0bfa2c.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libsiphasher-164322da2d6f7d4c.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libchrono-edcecb2b968b48e9.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libnum_traits-0c39c40c7d15f786.rlib" "/home/timelessnesses/opengl_clockery/target/release/deps/libiana_time_zone-47dc35aacef0da44.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-a6cca7f961d55588.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-aa642aa6ec3db8f0.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-d6b63c820b864a0a.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-a10c4cbf63715a75.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-7139c4cb779cfd1c.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-a4a26771e4788605.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-ee5361c8033cee99.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-c923c480edb3630b.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-c1ac72a170701ba0.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-1c6bd346cde09b59.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-004504e57af02cbd.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-55030b204f27e805.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-1dccf9ae3a25ee58.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-368effeb3688f9f2.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-cdb0a3d901b8e006.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-7c1ddbe4d1f3191d.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-cf0dfa90df3d5ac6.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-13c86eb6ecb8949f.rlib" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-df709554867cb333.rlib" "-Wl,-Bdynamic" "-lSDL2_ttf" "-lSDL2" "-lSDL2main" "-lsystemd" "-lzstd" "-llz4" "-lcrypt" "-lmount" "-lblkid" "-llzma" "-lcap" "-lpsx" "-lexpat" "-lfreetype" "-lz" "-lpng" "-lpng16" "-lbz2" "-lbrotlidec" "-lbrotlienc" "-lbrotlicommon" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/home/timelessnesses/.rustup/toolchains/beta-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/home/timelessnesses/opengl_clockery/target/release/deps/opengl_clockery-19e1ac3dfd6a7e11" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-nodefaultlibs" "-Wl,-rpath,$ORIGIN"
  = note: /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/vcpkg/installed/x64-linux/lib/libpng.a(pngwrite.c.o): in function `png_destroy_write_struct':
          pngwrite.c:(.text+0x1f00): undefined reference to `deflateEnd'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/vcpkg/installed/x64-linux/lib/libpng.a(pngwutil.c.o): in function `png_deflate_claim':
          pngwutil.c:(.text+0x367): undefined reference to `deflateEnd'
          /usr/bin/ld: pngwutil.c:(.text+0x3c5): undefined reference to `deflateInit2_'
          /usr/bin/ld: pngwutil.c:(.text+0x51d): undefined reference to `deflateReset'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/vcpkg/installed/x64-linux/lib/libpng.a(pngwutil.c.o): in function `png_text_compress':
          pngwutil.c:(.text+0x650): undefined reference to `deflate'
          /usr/bin/ld: /home/timelessnesses/opengl_clockery/target/vcpkg/installed/x64-linux/lib/libpng.a(pngwutil.c.o): in function `png_compress_IDAT':
          pngwutil.c:(.text+0x11d5): undefined reference to `deflate'
          collect2: error: ld returned 1 exit status

  = note: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified
  = note: use the `-l` flag to specify native libraries to link
  = note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#cargorustc-link-libkindname)

error: could not compile `opengl_clockery` (bin "opengl_clockery") due to previous error