Canop / broot

A new way to see and navigate directory trees : https://dystroy.org/broot
MIT License
10.35k stars 226 forks source link

ArchLinux's AUR fails to build broot #852

Open Porkepix opened 4 months ago

Porkepix commented 4 months ago

I used to update broot to latest commit for quite some time, through ArchLinux's AUR, from https://aur.archlinux.org/packages/broot-git Recently, Arch changed building defaults to enable lto by default for everything.

It caused some of these packages to fail to build under lto option, and broot is one of them. Stable package got added an option to disable it (https://gitlab.archlinux.org/archlinux/packaging/packages/broot/-/blob/main/PKGBUILD?ref_type=heads#L15) but AUR's didn't as it doesn't seems to get much updates.

Anyway, I didn't see any report of the failing build with lto so it felt like it's always worth a report, even if it's to explain that it's intended.

The build/link errors are the following ones:

[…]
   Compiling syntect-no-panic v4.6.1
   Compiling git2 v0.14.4
error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/usr/lib64/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/var/lib/flatpak/exports/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl" VSLANG="1033" "cc" "-m64" "/tmp/rustc44jMXv/symbols.o" "/home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o" "-Wl,--as-needed" "-L" "/home/foo/.cache/yay/broot-git/src/broot/target/release/deps" "-L" "/home/foo/.cache/yay/broot-git/src/broot/target/release/build/libgit2-sys-137980591fcd7a83/out/build" "-L" "/home/foo/.cache/yay/broot-git/src/broot/target/release/build/onig_sys-a54e20c17abf259d/out" "-L" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/tmp/rustc44jMXv/libonig_sys-f7f02a69e1422729.rlib" "/tmp/rustc44jMXv/liblibgit2_sys-135b91396ac10150.rlib" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-dc359f8c64813cd3.rlib" "-Wl,-Bdynamic" "-lz" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-Wl,--strip-all" "-nodefaultlibs"
  = note: /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `core::ptr::drop_in_place<once_cell::sync::OnceCell<syntect_no_panic::parsing::syntax_set::FirstLineCache>>':
          broot.35daaa9bb9bb8a4e-cgu.0:(.text._ZN4core3ptr107drop_in_place$LT$once_cell..sync..OnceCell$LT$syntect_no_panic..parsing..syntax_set..FirstLineCache$GT$$GT$17h9a6f3b045bb16527E+0x32): undefined reference to `onig_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::Regex as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:841:(.text._ZN4core3ptr76drop_in_place$LT$$LP$syntect_no_panic..parsing..regex..Regex$C$usize$RP$$GT$17h463288863c7329f4E+0x22): undefined reference to `onig_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:841:(.text._ZN4core3ptr74drop_in_place$LT$syntect_no_panic..parsing..syntax_definition..Pattern$GT$17h87cb5cc780e6e3f9E+0x80): undefined reference to `onig_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:841:(.text._ZN205_$LT$syntect_no_panic..parsing..syntax_set.._..$LT$impl$u20$serde..de..Deserialize$u20$for$u20$syntect_no_panic..parsing..syntax_set..SyntaxSet$GT$..deserialize..__Visitor$u20$as$u20$serde..de..Visitor$GT$9visit_seq17heaaf291179b5022dE+0x1bbe): undefined reference to `onig_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::discover':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:252:(.text._ZN4git24repo10Repository8discover17h2cbea4a6ad77e329E+0x9f): undefined reference to `git_repository_discover'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:260:(.text._ZN4git24repo10Repository8discover17h2cbea4a6ad77e329E+0x181): undefined reference to `git_buf_dispose'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::repo::Repository as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:3116:(.text._ZN4core3ptr92drop_in_place$LT$core..result..Result$LT$git2..repo..Repository$C$git2..error..Error$GT$$GT$17h652de293a522f650E+0x19): undefined reference to `git_repository_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::workdir':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:464:(.text._ZN5broot4verb17execution_builder22ExecutionStringBuilder37get_raw_sel_name_standard_replacement28_$u7b$$u7b$closure$u7d$$u7d$17h854df05cd9bcd1c9E+0x19): undefined reference to `git_repository_workdir'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::repo::Repository as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:3116:(.text._ZN5broot4verb17execution_builder22ExecutionStringBuilder37get_raw_sel_name_standard_replacement28_$u7b$$u7b$closure$u7d$$u7d$17h854df05cd9bcd1c9E+0xf2): undefined reference to `git_repository_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::workdir':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:464:(.text._ZN5broot4verb17execution_builder22ExecutionStringBuilder37get_raw_sel_name_standard_replacement28_$u7b$$u7b$closure$u7d$$u7d$17h4d6e09b2ee63536cE+0x14): undefined reference to `git_repository_workdir'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::repo::Repository as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:3116:(.text._ZN5broot4verb17execution_builder22ExecutionStringBuilder37get_raw_sel_name_standard_replacement28_$u7b$$u7b$closure$u7d$$u7d$17h4d6e09b2ee63536cE+0x68): undefined reference to `git_repository_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:3116:(.text._ZN4core3ptr43drop_in_place$LT$git2..repo..Repository$GT$17hf5cd36c5da020f14E+0x2): undefined reference to `git_repository_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::buf::Buf as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/buf.rs:69:(.text._ZN4core3ptr35drop_in_place$LT$git2..buf..Buf$GT$17h1941d021b360a809E+0x2): undefined reference to `git_buf_dispose'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::open':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:137:(.text._ZN4git24repo10Repository4open17h1b54053f137febefE+0x72): undefined reference to `git_repository_open'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN4core3ptr87drop_in_place$LT$core..option..Option$LT$syntect_no_panic..easy..HighlightLines$GT$$GT$17hfcdf5a0a8b20ba01E+0x18c): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::config::Config::open_default':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/config.rs:66:(.text._ZN5broot3git6ignore18find_global_ignore17h91a0ddfcf6101a49E+0x52): undefined reference to `git_config_open_default'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::config::Config::get_path':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/config.rs:259:(.text._ZN5broot3git6ignore18find_global_ignore17h91a0ddfcf6101a49E+0x108): undefined reference to `git_config_get_path'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::buf::Buf as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/buf.rs:69:(.text._ZN5broot3git6ignore18find_global_ignore17h91a0ddfcf6101a49E+0x23c): undefined reference to `git_buf_dispose'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::config::Config as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/config.rs:477:(.text._ZN5broot3git6ignore18find_global_ignore17h91a0ddfcf6101a49E+0x246): undefined reference to `git_config_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::buf::Buf as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/buf.rs:69:(.text._ZN5broot3git6ignore18find_global_ignore17h91a0ddfcf6101a49E+0x422): undefined reference to `git_buf_dispose'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::config::Config as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/config.rs:477:(.text._ZN5broot3git6ignore18find_global_ignore17h91a0ddfcf6101a49E+0x433): undefined reference to `git_config_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/config.rs:477:(.text._ZN4core3ptr41drop_in_place$LT$git2..config..Config$GT$17h02d7a3fc396c5854E+0x2): undefined reference to `git_config_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::discover':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:252:(.text._ZN4git24repo10Repository8discover17h7b5ed9716d5f0b84E+0x9e): undefined reference to `git_repository_discover'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:260:(.text._ZN4git24repo10Repository8discover17h7b5ed9716d5f0b84E+0x180): undefined reference to `git_buf_dispose'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::workdir':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:464:(.text._ZN5broot3git6status18LineStatusComputer4from17h6f5e883faae5e83cE+0x20): undefined reference to `git_repository_workdir'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::statuses':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:924:(.text._ZN5broot3git6status18LineStatusComputer4from17h6f5e883faae5e83cE+0xa2): undefined reference to `git_status_list_new'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::status::Statuses::len':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/status.rs:254:(.text._ZN5broot3git6status18LineStatusComputer4from17h6f5e883faae5e83cE+0xc5): undefined reference to `git_status_list_entrycount'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::status::Statuses::get':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/status.rs:244:(.text._ZN5broot3git6status18LineStatusComputer4from17h6f5e883faae5e83cE+0xf8): undefined reference to `git_status_byindex'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::status::Statuses as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/status.rs:287:(.text._ZN5broot3git6status18LineStatusComputer4from17h6f5e883faae5e83cE+0x5ec): undefined reference to `git_status_list_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::repo::Repository as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:3116:(.text._ZN5broot3git6status18LineStatusComputer4from17h6f5e883faae5e83cE+0x605): undefined reference to `git_repository_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::status::Statuses as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/status.rs:287:(.text._ZN4core3ptr43drop_in_place$LT$git2..status..Statuses$GT$17hd3420536a2e3fa38E+0x2): undefined reference to `git_status_list_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::repo::Repository as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:3116:(.text._ZN5broot3git15status_computer15get_tree_status28_$u7b$$u7b$closure$u7d$$u7d$17hc75d2807501446a3E+0x47d): undefined reference to `git_repository_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::head':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:775:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x2e): undefined reference to `git_repository_head'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::reference::Reference::shorthand_bytes':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/reference.rs:226:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x43): undefined reference to `git_reference_shorthand'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::reference::Reference as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/reference.rs:401:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x1d8): undefined reference to `git_reference_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::repo::Repository::diff_index_to_workdir':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/repo.rs:2637:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x1f6): undefined reference to `git_diff_index_to_workdir'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::diff::Diff::stats':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/diff.rs:235:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x21d): undefined reference to `git_diff_get_stats'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::diff::Diff as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/diff.rs:461:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x233): undefined reference to `git_diff_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::diff::DiffStats::insertions':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/diff.rs:1180:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x256): undefined reference to `git_diff_stats_insertions'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::diff::DiffStats::deletions':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/diff.rs:1185:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x262): undefined reference to `git_diff_stats_deletions'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::diff::DiffStats as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/diff.rs:1216:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x28f): undefined reference to `git_diff_stats_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::diff::Diff as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/diff.rs:461:(.text._ZN5broot3git6status13TreeGitStatus4from17he6aad42a66b5b8e4E+0x61f): undefined reference to `git_diff_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::reference::Reference as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/reference.rs:401:(.text._ZN4core3ptr47drop_in_place$LT$git2..reference..Reference$GT$17h9d566345310215ebE+0x2): undefined reference to `git_reference_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::diff::Diff as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/diff.rs:461:(.text._ZN4core3ptr37drop_in_place$LT$git2..diff..Diff$GT$17h513f93b8e3ec6a66E+0x2): undefined reference to `git_diff_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<git2::diff::DiffStats as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/diff.rs:1216:(.text._ZN4core3ptr42drop_in_place$LT$git2..diff..DiffStats$GT$17h7d9d09f198a0d5b3E+0x2): undefined reference to `git_diff_stats_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `git2::error::Error::last_error':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/error.rs:58:(.text._ZN4git25error5Error10last_error17h77649413efafeb2fE+0x33): undefined reference to `git_error_last'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/error.rs:58:(.text._ZN4git25error5Error10last_error17h77649413efafeb2fE+0x147): undefined reference to `git_error_last'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/git2-0.14.4/src/error.rs:66:(.text._ZN4git25error5Error10last_error17h77649413efafeb2fE+0x194): undefined reference to `git_error_clear'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `libgit2_sys::init::{{closure}}':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/libgit2-sys-0.13.5+1.4.5/lib.rs:4119:(.text.unlikely._ZN3std10sys_common4once5futex4Once4call17h8d74cabe8de04621E+0x102): undefined reference to `git_libgit2_init'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/libgit2-sys-0.13.5+1.4.5/lib.rs:4128:(.text.unlikely._ZN3std10sys_common4once5futex4Once4call17h8d74cabe8de04621E+0x1c7): undefined reference to `git_error_last'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN4core3ptr41drop_in_place$LT$onig..region..Region$GT$17hab5e9d8901f2e18fE+0x4): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::Error::new':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:166:(.text._ZN4onig5Error3new17h6572db42e95f5801E+0x40): undefined reference to `onig_error_code_to_str'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::Regex as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:841:(.text._ZN4core3ptr60drop_in_place$LT$syntect_no_panic..parsing..regex..Regex$GT$17h09d567667712746bE+0x22): undefined reference to `onig_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN4core3ptr66drop_in_place$LT$syntect_no_panic..parsing..parser..StateLevel$GT$17h35f65b147334bab8E+0x33): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::region::Region::reserve':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:81:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x113): undefined reference to `onig_region_resize'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x955): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::region::Region::clone_from_raw':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:52:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0xa2c): undefined reference to `onig_region_copy'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::Regex as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:841:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0xb20): undefined reference to `onig_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::region::Region::clone_from_raw':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:52:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0xba0): undefined reference to `onig_region_copy'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0xc08): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::region::Region::clone_from_raw':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:52:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0xc41): undefined reference to `onig_region_copy'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0xd1e): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x1674): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x17cf): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x1feb): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x2a76): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::region::Region::clone_from_raw':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:52:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x2cea): undefined reference to `onig_region_copy'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x3011): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x3039): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x312f): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x320f): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN16syntect_no_panic7parsing6parser10ParseState10parse_line17ha7991f7143f6ce05E+0x3242): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o:/home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208: more undefined references to `onig_region_free' follow
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::match_param::MatchParam as core::default::Default>::default':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/match_param.rs:37:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x3a): undefined reference to `onig_new_match_param'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/match_param.rs:38:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x46): undefined reference to `onig_initialize_match_param'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::Regex::encoding':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:824:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x50): undefined reference to `onig_get_encoding'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::Regex::search_with_param':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:707:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x57): undefined reference to `OnigEncodingUTF8'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:710:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x64): undefined reference to `OnigEncodingUTF8'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::Regex::encoding':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:824:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x73): undefined reference to `onig_get_encoding'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::match_param::MatchParam as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/match_param.rs:48:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0xf0): undefined reference to `onig_free_match_param'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/match_param.rs:48:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x19d): undefined reference to `onig_free_match_param'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::Regex::search_with_param':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:723:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x1e3): undefined reference to `onig_search_with_param'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::match_param::MatchParam as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/match_param.rs:48:(.text._ZN16syntect_no_panic7parsing5regex5Regex6search17hd1759f01e8036080E+0x1fc): undefined reference to `onig_free_match_param'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN4core3ptr94drop_in_place$LT$core..option..Option$LT$syntect_no_panic..parsing..parser..RegexMatch$GT$$GT$17hb3bfa0c0b7dede6fE+0xb): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN4core3ptr66drop_in_place$LT$syntect_no_panic..parsing..parser..RegexMatch$GT$17hde2dcc3e7025aea7E+0x4): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `core::ptr::const_ptr::<impl *const T>::add':
          /usr/src/debug/rust/rustc-1.76.0-src/library/core/src/ptr/const_ptr.rs:944:(.text._ZN4core3ptr263drop_in_place$LT$std..collections..hash..map..HashMap$LT$$BP$const$u20$syntect_no_panic..parsing..syntax_definition..MatchPattern$C$core..option..Option$LT$syntect_no_panic..parsing..regex..Region$GT$$C$core..hash..BuildHasherDefault$LT$fnv..FnvHasher$GT$$GT$$GT$17h4f04a571796d606cE+0x42): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::region::Region as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/region.rs:208:(.text._ZN4core3ptr89drop_in_place$LT$core..option..Option$LT$syntect_no_panic..parsing..regex..Region$GT$$GT$17h2f4866d1d43821ffE+0xe): undefined reference to `onig_region_free'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::match_param::MatchParam as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/match_param.rs:48:(.text._ZN4core3ptr50drop_in_place$LT$onig..match_param..MatchParam$GT$17ha2abe99850476fcfE+0x2): undefined reference to `onig_free_match_param'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::syntax::Syntax::default':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/syntax.rs:97:(.text._ZN9once_cell3imp17OnceCell$LT$T$GT$10initialize28_$u7b$$u7b$closure$u7d$$u7d$17h24934d448862e1c1E+0x2c): undefined reference to `OnigDefaultSyntax'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `onig::Regex::with_options_and_encoding':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:347:(.text._ZN9once_cell3imp17OnceCell$LT$T$GT$10initialize28_$u7b$$u7b$closure$u7d$$u7d$17h24934d448862e1c1E+0xa8): undefined reference to `OnigEncodingUTF8'
          /usr/bin/ld: /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:347:(.text._ZN9once_cell3imp17OnceCell$LT$T$GT$10initialize28_$u7b$$u7b$closure$u7d$$u7d$17h24934d448862e1c1E+0xc1): undefined reference to `onig_new'
          /usr/bin/ld: /home/foo/.cache/yay/broot-git/src/broot/target/release/deps/broot-cf12dad7bcfb4248.broot.35daaa9bb9bb8a4e-cgu.0.rcgu.o: in function `<onig::Regex as core::ops::drop::Drop>::drop':
          /home/foo/.cargo/registry/src/index.crates.io-6f17d22bba15001f/onig-6.4.0/src/lib.rs:841:(.text._ZN9once_cell3imp17OnceCell$LT$T$GT$10initialize28_$u7b$$u7b$closure$u7d$$u7d$17h24934d448862e1c1E+0x16d): undefined reference to `onig_free'
          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 `broot` (bin "broot") due to 1 previous error
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: broot-git-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
broot-git - exit status 4

I'm not much knowledgeable of the matter, but I'm guessing issue would come from onig crate, coming from there:

onig v6.4.0
└── syntect-no-panic v4.6.1
    └── broot v1.35.1-dev (/home/foo/.cache/yay/broot-git/src/broot)
Canop commented 4 months ago

What exact command is used for building broot ?

Porkepix commented 4 months ago

Just cargo build --release, see https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=broot-git#n27 But some build options and environments comes from https://gitlab.archlinux.org/archlinux/packaging/packages/pacman/-/blob/main/makepkg.conf?ref_type=heads which is where lto comes from, but I don't know enough of its internals to explain how does it interact. I also wanted to do a manual cargo build while requiring it to do a lto build, but couldn't find the right options or documentations to do so.

Canop commented 4 months ago

Here's why I don't understand:

I already build for arch with cargo build --release, you find the result in https://github.com/Canop/broot/releases/tag/v1.36.0 And broot in release mode is always built with the lto option, because of this line: https://github.com/Canop/broot/blob/main/Cargo.toml#L91

Porkepix commented 4 months ago

All I can say is that, on the advice of people on IRC, broot as for the two other rust packages I have with similar issues, is back to building fine if I remove/disable using an exclamation mark lto from this line: https://gitlab.archlinux.org/archlinux/packaging/packages/pacman/-/blob/main/makepkg.conf?ref_type=heads#L100 This is also the reason distro builds stable releases by adding that option, as visible here: https://gitlab.archlinux.org/archlinux/packaging/packages/broot/-/blob/main/PKGBUILD?ref_type=heads#L15

If you try to build stable's PKGBUILD but remove this line, you should run into the same issue as me.

When I was looking for ways to reproduce this with only cargo, outside of makepkg's environment, I wasn't able to find good ways to do it, but seemed to find things about something like two "levels" of lto, maybemakepkg is trying to do a more "pushed" one which trigger that issue? (I've honestly no idea, here).

upbqdn commented 1 day ago

I had a similar issue for this package: https://aur.archlinux.org/packages/zebrad.

The only difference was that the undefined reference was to git_...

Adding

options=(!debug !lto)

to PKGBUILD resolved it. The package used to work fine without that line before.

Here's someone else with a similar issue: https://bbs.archlinux.org/viewtopic.php?id=294150.

So it looks like the issue is not related to broot only.

Porkepix commented 1 day ago

Adding

options=(!debug !lto)

to PKGBUILD resolved it. The package used to work fine without that line before.

That line disables lto, so of course it works with it, but it doesn't solve the fact it skips using lto.

EDIT: And yes, I reported the same issue elsewhere. I use at least ten packages like that built with rust, and 3 of them have issues with lto, which seems to comes from crates that doesn't seems to receive updates anymore I think.

upbqdn commented 1 day ago

I also couldn't reproduce it outside of makepkg. It's also not clear to me why lto causes it.