[GH-ISSUE #921] AUR Fails to build from Git (colpetto) #276

Closed
opened 2026-05-22 21:52:22 +01:00 by JakeStanger · 24 comments
Owner

Originally created by @kode54 on GitHub (Apr 4, 2025).
Original GitHub issue: https://github.com/JakeStanger/ironbar/issues/921

Describe the bug
The project now fails to build as of commit 226048a2e3 due to colpetto failing to link.

To Reproduce
Steps to reproduce the behavior:

  1. Check out ironbar-git from the AUR
  2. Attempt to build it in a clean chroot using pkgctl build
  3. It will fail to link
  4. See error

Expected behavior
Package should link properly, I'm not sure if it's a missing dependency.

System information:

  • Distro: Arch Linux
  • Compositor: labwc
  • Ironbar version: 226048a2e3

Configuration
N/A, as the issue is with building.

Additional context
Here is the error message:

error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/usr/lib64/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl" VSLANG="1033" "cc" "-m64" "/tmp/rustcgTyrA8/symbols.o" "<17 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/build/ironbar-git/src/ironbar/target/release/deps/{libctrlc-551b8213256af0fc.rlib,libreqwest-dcc2f2456e2749d3.rlib,librustls_pemfile-aba7d5d777706f75.rlib,librustls_pki_types-ed2fe8e6fcd90f8c.rlib,libserde_urlencoded-7950bb4f9dbfc6fa.rlib,libbase64-2829e67f77c8dcad.rlib,libipnet-80647500ed6dce89.rlib,libhyper_tls-1258b518740a9d9d.rlib,libtokio_native_tls-a1a76bed2962227a.rlib,libtower-4153d79a366a5f3c.rlib,libsync_wrapper-76c4a7983009af19.rlib,libtower_layer-0a4a6f04d285eefd.rlib,libnative_tls-1ae0ceae799fbea1.rlib,libopenssl_probe-816bc0d31480c9dc.rlib,libopenssl-66d7eac818944a78.rlib,libforeign_types-a31d648b29f2098a.rlib,libforeign_types_shared-a40c0025a327b671.rlib,libopenssl_sys-c7f56f1fbd95eff6.rlib,libhyper_util-aea3d4a7ce204d17.rlib,libtower_service-526b2832f8ec9b84.rlib,libhyper-75f2562adbdbbf9e.rlib,libwant-b06f45eeb0a87cd7.rlib,libtry_lock-15a122449dbf7469.rlib,libhttparse-4a88e89cc6108bcd.rlib,libh2-d147f98499633d4d.rlib,libatomic_waker-0d2c3214c61e8547.rlib,libtokio_util-2f681883ba652023.rlib,libhttp_body_util-440374061abcf496.rlib,libhttp_body-dd0c0df2faeeda38.rlib,liburl-dd5e86a616aa3d05.rlib,libidna-a538757f99569bd4.rlib,libidna_adapter-dc222f2bd819ce0d.rlib,libicu_normalizer-057560b1c682a7fe.rlib,libicu_normalizer_data-b3a610c49774ea7d.rlib,libwrite16-2156d6393ec3d321.rlib,libutf8_iter-224c4ea1d57e10b4.rlib,libutf16_iter-cd75ca094bf72e60.rlib,libicu_properties-c341a1cbc5f591a0.rlib,libicu_properties_data-a0d98b33bfd7001e.rlib,libicu_locid_transform-dab51a569fef97e9.rlib,libicu_locid_transform_data-f756dc3982d2061c.rlib,libicu_collections-9dcca30a2d77ecd0.rlib,libicu_provider-d757a9589b9acc4a.rlib,libicu_locid-3b56b8366ac75721.rlib,liblitemap-1a95d1b36425345b.rlib,libtinystr-a72f0df0fbca7063.rlib,libzerovec-2a2954c44b2782c7.rlib,libwriteable-7bfb1b1605412a3e.rlib,libyoke-881a71eac0411aa3.rlib,libzerofrom-2ab9d981b5cab172.rlib,libstable_deref_trait-d094b8de272ef02e.rlib,libform_urlencoded-5b8976e732ae5c1e.rlib,libpercent_encoding-f2696032b63a5571.rlib,libhttp-a0fa70ed45028105.rlib,libfnv-1620094921379457.rlib,libchrono-8f6205931051657c.rlib,libiana_time_zone-77e6644b03ac1abc.rlib,libpure_rust_locales-687b20a4510980f1.rlib,libnotify-bce539453ef5f690.rlib,libfiletime-0b9e2fc2deb09549.rlib,libinotify-2e1f650aaa2f73b3.rlib,libinotify_sys-848dc96941120a24.rlib,libnotify_types-ff2579dac41cfb09.rlib,libtracing_appender-4a9fccbf91ac4de7.rlib,libtime-810931a1f41d178e.rlib,libtime_core-0135dec28a096929.rlib,libnum_conv-dd15d4f35140f66c.rlib,libderanged-c78c64f5ce76d0a2.rlib,libpowerfmt-084e662e5a79f79e.rlib,libcrossbeam_channel-1abbe1ec5cad56b8.rlib,libstrip_ansi_escapes-7ca6f82051ab44fa.rlib,libvte-f008d21df1ab8d90.rlib,libwalkdir-8ac15ad309dad68e.rlib,libsame_file-ee4d781a06111def.rlib,liblibpulse_binding-96bd7e3921763de4.rlib,liblibpulse_sys-ddc9852445b95c02.rlib,libsystem_tray-abee4ca0c76f8469.rlib,libdbusmenu_gtk3_sys-91c19291de99301c.rlib,libgdk_pixbuf_sys-a711c76a0d664bd0.rlib,libgio_sys-ed83536dd4640caa.rlib,libdbusmenu_glib_sys-491ede884204d6bb.rlib,libgobject_sys-5343845873af7a49.rlib,libglib_sys-8620a4c6398ae566.rlib,libsysinfo-4faa08272bc3657c.rlib,libzbus-e6e664f7582248c4.rlib,libhex-dd0048815c7e81e6.rlib,libordered_stream-b673623b8ff13b36.rlib,libasync_broadcast-eee43e78883c8ab9.rlib,libnix-bf732f0b8026d00d.rlib,libzbus_names-f39eaac79f1d321b.rlib,libzvariant-27f77c832d898473.rlib,libenumflags2-c653d841f2d5f4c6.rlib,libendi-cc872a20493b3de7.rlib,libzvariant_utils-b35920e11ad85567.rlib,libsyn-3a36f5f956f3945d.rlib,libquote-6355692ae8e06256.rlib,libproc_macro2-c7d4dbf2a3f3feaa.rlib,libunicode_ident-9d7478d46c185987.rlib}" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib/{libproc_macro-ea0908ceef2de05c.rlib}" "/build/ironbar-git/src/ironbar/target/release/deps/{libstatic_assertions-cdb287d24bd7f0f9.rlib,libfutures_signals-c326517eff9ce73d.rlib,libdiscard-23d1136727fd035b.rlib,libpin_project-925879618e200494.rlib,libmpris-83858d779c07121e.rlib,libfrom_variants-63ad6c3f314ea5bc.rlib,libdbus-a35a0d5f7118d4da.rlib,liblibdbus_sys-457508cb6b8af019.rlib,libmpd_utils-21594d2a35c723c7.rlib,libfutures-53a0799ad23b2ed7.rlib,libmpd_client-c6426d29d3e82068.rlib,libmpd_protocol-c515976bb83ca968.rlib,libnom-60cea937a939faf6.rlib,libmlua-85e38adb68fba790.rlib,libeither-6870fbbec25f1a20.rlib,librustc_hash-c6a5dc504898f1e7.rlib,libparking_lot-75a6c6edc204cec4.rlib,libparking_lot_core-c525c118b52bc089.rlib,liblock_api-df23d95abaaccbe0.rlib,libscopeguard-c22ac9bf1ad85f03.rlib,libmlua_sys-8a0439709fc8c5e9.rlib,libbstr-852b9e5d982db3f6.rlib,librustix-d04c6a8d5fd6a3c9.rlib,liblinux_raw_sys-46ecfde9179ffeb8.rlib,libevdev_rs-2ce4be6973883dca.rlib,libbitflags-bdc5b2343179abd4.rlib,libevdev_sys-4446f929b5d9a9f4.rlib,libcolpetto-80684ab95e282306.rlib,libdevil-eea39a41acb8ab9a.rlib,libswayipc_async-f905ccf8c7b349df.rlib,libasync_pidfd_next-7413af94ecaceaa2.rlib,libswayipc_types-3620db6d46f41af7.rlib,libasync_io-34def8458f95dcd6.rlib,libconcurrent_queue-e357f0986736ef2d.rlib,libcrossbeam_utils-0ce26f031829afef.rlib,libasync_lock-11c4da1a371d138c.rlib,libevent_listener_strategy-df21e82702c19bf2.rlib,libevent_listener-c1445655956d4aad.rlib,libfutures_lite-3e51fd070c9748da.rlib,libparking-cf68990e79dcc87e.rlib,libfastrand-aa993140c3844203.rlib,libhyprland-e691ddfd2e5b71ca.rlib,libnum_traits-df9a2187ad04805a.rlib,libahash-2a1cb8e65c300b87.rlib,libgetrandom-ea307ea7dcbfad74.rlib,libzerocopy-eda71ce69f00fb35.rlib,libgtk_layer_shell-93a3a22dcf20391e.rlib,libgtk_layer_shell_sys-8557019bf2e6534d.rlib,libuniversal_config-3a48a857199fa119.rlib,libron-27b250cbde8968bb.rlib,libbase64-99506ccf03093137.rlib,libcorn-23a32d627a67efbc.rlib,libpest-087cddad5f96d665.rlib,libucd_trie-e992a5bb4331d330.rlib,libthiserror-e048c9eebe4adb98.rlib,libtoml-ff8cf513326c490d.rlib,libtoml_edit-7c959c2b5a871787.rlib,libserde_spanned-f69beb3239f3e125.rlib,libwinnow-1863e6a1424d0f7f.rlib,libtoml_datetime-77d52a2580b46a6b.rlib,libserde_yaml-d7489a16fb7b232f.rlib,libindexmap-a593d5e065745486.rlib,libequivalent-fb286702529c81d3.rlib,libhashbrown-94163481bb00f3c3.rlib,libunsafe_libyaml-8bb75915eb280030.rlib,libserde_json-6de433676023c8c2.rlib,libitoa-bea382a3cb3753e5.rlib,libryu-9837472e36f1e75b.rlib,libdirs-b201ff3a540b0dfb.rlib,libdirs_sys-5a62013a7b2c41c9.rlib,libtokio-9c47cefd3ee42e61.rlib,libsignal_hook_registry-3426c10c18c770e2.rlib,libsocket2-77eacb81ca85865e.rlib,libbytes-dc47bbfc9ce4e835.rlib,libmio-fbce156a503082a0.rlib,libsmithay_client_toolkit-fb421c7ac5e1c8cc.rlib,libwayland_cursor-e79bc2ff0a3dbb33.rlib,libxcursor-3675f8236975fee2.rlib,libmemmap2-5939960d4f5b8e9c.rlib,libwayland_protocols_wlr-1daec2a8dc50a47d.rlib,libwayland_protocols-4df6972402f496e9.rlib,libwayland_csd_frame-b106e3d0dfe154ad.rlib,libcursor_icon-59e90458a29c5ab5.rlib,libcalloop_wayland_source-a2fa652f8f50d30e.rlib,libwayland_client-cacef983b9ee0644.rlib,libwayland_backend-10407714e3c2585c.rlib,libdowncast_rs-afe891e6707f3d6e.rlib,libwayland_sys-182c3ee61bc6a246.rlib,libcalloop-bf79f639850b3b30.rlib,libpolling-8504ecfb563de5b7.rlib,librustix-15e33339ec3b17eb.rlib,liblinux_raw_sys-3b9b604ce385c5eb.rlib,libgtk-f8fd31cc3025c418.rlib,libfield_offset-2491bfedd5c8b7d3.rlib,libmemoffset-442ad016264dda1d.rlib,libgdk-3c991948717b93cc.rlib,libpango-858a4adbfbe464eb.rlib,libgdk_pixbuf-f0e23c69bddfee9e.rlib,libgio-6d2108d9e4c79872.rlib,libcairo-2302dbe73a6c20d3.rlib,libatk-95b638f51f4f70c4.rlib,libglib-91444eae5c3cd50f.rlib,libfutures_executor-5abd3b32a8025f42.rlib,libthiserror-aa21be2b6002ccf6.rlib,libfutures_util-6cab369945d2d2d7.rlib,libfutures_io-ff0c89ec793dcce7.rlib,libslab-a3fd21f95fbc4aa1.rlib,libpin_utils-b799d4e33735cf7a.rlib,libfutures_task-ddfb8ebe5c017c01.rlib,libfutures_channel-5355ad4048b37b1a.rlib,libfutures_sink-5a5c7d2823b371c5.rlib,libfutures_core-deed0e72cec7c9cd.rlib,libbitflags-201b50b4ef3ff600.rlib,libserde-6811db7aa75afadd.rlib,libgtk_sys-ea4d4b9c344657dd.rlib,libatk_sys-07c2fa1ad522b233.rlib,libgdk_sys-babdda16ccf816b7.rlib,libpango_sys-c3064ff01e11ee6d.rlib,libgdk_pixbuf_sys-228ec1411309298c.rlib,libgio_sys-37b63b20b5d4bd5e.rlib,libcairo_sys-fdc3388f5110817a.rlib,libgobject_sys-9e83bf0ac03f4464.rlib,libglib_sys-71c117c4e60ac066.rlib,libdirs-785f87e5d105b680.rlib,libdirs_sys-113363c86281519f.rlib,liboption_ext-193dd5fae11941b4.rlib,libcolor_eyre-402c9fd3e937fb0e.rlib,libcolor_spantrace-0b98c220360e740d.rlib,libtracing_error-58dc58b4e321f8bf.rlib,libtracing_subscriber-c88321f69b834997.rlib,libsmallvec-5b2e6d1bba788ec0.rlib,libsharded_slab-fb8594aed0562121.rlib,liblazy_static-31df14ac66df0404.rlib,libmatchers-0c2dc463fe85b61e.rlib,libregex_automata-f01e7df15ea25349.rlib,libregex_syntax-59923d34d9f8946f.rlib,libregex-d88bbae71b9a97a8.rlib,libregex_automata-d7b79f2223bc90c2.rlib,libaho_corasick-0de7408b769fb752.rlib,libregex_syntax-66d4531dde832f93.rlib,libnu_ansi_term-97b24c75d0128250.rlib,liboverload-b6442ac7bb270cb5.rlib,libthread_local-6bcd9e621a20ace4.rlib,libtracing_log-fea0d76054da2bce.rlib,liblog-c96709bd9bdbe885.rlib,libtracing-fc724527004818c9.rlib,libpin_project_lite-0801fd3be8f897ef.rlib,libtracing_core-b5ac8e8bdb5f6cbe.rlib,libowo_colors-9233e3f81f37e0b5.rlib,libeyre-c9ed9e4927b5080e.rlib,libindenter-8b8784305bea8274.rlib,libonce_cell-dc43ff25504a3e7e.rlib,libbacktrace-f9c19154d3ca432e.rlib,libminiz_oxide-bd0ff4ad40313d05.rlib,libadler-150bdb1352432e68.rlib,libobject-6f846d9bd0ad3b84.rlib,libmemchr-fb6804a4a84c6bd5.rlib,liblibc-fda5309f8a83c76e.rlib,libaddr2line-4b554fe8694986f5.rlib,libgimli-13c3898e8e85defd.rlib,librustc_demangle-a265236744e46a92.rlib,libclap-82e302ce982bcd8b.rlib,libclap_builder-f41d7b56d1f236db.rlib,libstrsim-2f1529b5911ba45a.rlib,libanstream-336c7e1e2966edc7.rlib,libanstyle_query-b5fb1a4ac4c0dedc.rlib,libis_terminal_polyfill-be84f7c58d878956.rlib,libcolorchoice-3266b0ed16acd786.rlib,libanstyle_parse-6b3c1fee52ec5d6d.rlib,libutf8parse-6c6edac3356b40a9.rlib,libclap_lex-f103cf3ab80ae5ad.rlib,libanstyle-8daf941377092eeb.rlib,libcfg_if-e7ec7a16d820b263.rlib}" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-38dff5a12bf7cbb5.rlib,libpanic_unwind-64f7521ab6b302bc.rlib,libobject-95d3bf196df2636a.rlib,libmemchr-66730eff58814c9a.rlib,libaddr2line-67ceef29e1470946.rlib,libgimli-b4da0462a8f2ce69.rlib,librustc_demangle-540ac72b54a76225.rlib,libstd_detect-bb00a46b92bfe238.rlib,libhashbrown-370d76d11e5f40b2.rlib,librustc_std_workspace_alloc-ee08182a3484573c.rlib,libminiz_oxide-db0b575f7947f6fa.rlib,libadler-a44df0b6779f1bef.rlib,libunwind-72be102a02ce8f8f.rlib,libcfg_if-86e3feaa4aa78528.rlib,liblibc-28c3d2752f3ed59a.rlib,liballoc-cd47a92b4ce5beb7.rlib,librustc_std_workspace_core-5713de60ee4ecbd9.rlib,libcore-b235a05cfe4944f1.rlib,libcompiler_builtins-b324919e01cfb96a.rlib}" "-Wl,-Bdynamic" "-lssl" "-lcrypto" "-lpulse" "-ldbusmenu-gtk3" "-ldbusmenu-glib" "-lgtk-3" "-lgdk-3" "-lz" "-lpangocairo-1.0" "-lcairo-gobject" "-lgdk_pixbuf-2.0" "-latk-1.0" "-lpango-1.0" "-lcairo" "-lharfbuzz" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgdk_pixbuf-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-ldbusmenu-glib" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lglib-2.0" "-ldbus-1" "-lluajit-5.1" "-levdev" "-linput" "-ludev" "-lgtk-layer-shell" "-lgobject-2.0" "-lgtk-3" "-lgdk-3" "-lz" "-lpangocairo-1.0" "-lcairo-gobject" "-lgdk_pixbuf-2.0" "-latk-1.0" "-lpango-1.0" "-lcairo" "-lharfbuzz" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-latk-1.0" "-lgobject-2.0" "-lglib-2.0" "-lgdk-3" "-lz" "-lpangocairo-1.0" "-lpango-1.0" "-lgdk_pixbuf-2.0" "-lcairo-gobject" "-lgobject-2.0" "-lcairo" "-lharfbuzz" "-lglib-2.0" "-lpango-1.0" "-lgobject-2.0" "-lharfbuzz" "-lglib-2.0" "-lgdk_pixbuf-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-lcairo-gobject" "-lcairo" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/usr/lib" "-L" "/build/ironbar-git/src/ironbar/target/release/build/colpetto-870d157cbd760447/out" "-L" "/usr/lib" "-L" "/usr/lib" "-L" "/usr/lib" "-L" "/usr/lib" "-L" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/build/ironbar-git/src/ironbar/target/release/deps/ironbar-eae3fa6831b4f692" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-Wl,--strip-debug" "-nodefaultlibs"
  = note: some arguments are omitted. use `--verbose` to show all linker arguments
  = note: /usr/bin/ld: /build/ironbar-git/src/ironbar/target/release/deps/libcolpetto-80684ab95e282306.rlib(colpetto-80684ab95e282306.colpetto.45f545efd86caf2f-cgu.0.rcgu.o): in function `colpetto::logger::setup_logger':
          /build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colpetto-0.6.0/src/logger.rs:21:(.text._ZN8colpetto6logger12setup_logger17hed6ea00f7083fbe3E+0x13): undefined reference to `set_log_callback'
          /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colpetto-0.6.0/src/logger.rs:32:(.text._ZN8colpetto6logger12setup_logger17hed6ea00f7083fbe3E+0x27): undefined reference to `get_log_handler'
          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#rustc-link-lib)

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

Screenshots
N/A

Originally created by @kode54 on GitHub (Apr 4, 2025). Original GitHub issue: https://github.com/JakeStanger/ironbar/issues/921 **Describe the bug** The project now fails to build as of commit 226048a2e383fbee1a6a30fc9c337aee86a31420 due to colpetto failing to link. **To Reproduce** Steps to reproduce the behavior: 1. Check out `ironbar-git` from the AUR 2. Attempt to build it in a clean chroot using `pkgctl build` 3. It will fail to link 4. See error **Expected behavior** Package should link properly, I'm not sure if it's a missing dependency. **System information:** - Distro: Arch Linux - Compositor: labwc - Ironbar version: 226048a2e383fbee1a6a30fc9c337aee86a31420 **Configuration** N/A, as the issue is with building. **Additional context** Here is the error message: ``` error: linking with `cc` failed: exit status: 1 | = note: LC_ALL="C" PATH="/usr/lib64/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl" VSLANG="1033" "cc" "-m64" "/tmp/rustcgTyrA8/symbols.o" "<17 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/build/ironbar-git/src/ironbar/target/release/deps/{libctrlc-551b8213256af0fc.rlib,libreqwest-dcc2f2456e2749d3.rlib,librustls_pemfile-aba7d5d777706f75.rlib,librustls_pki_types-ed2fe8e6fcd90f8c.rlib,libserde_urlencoded-7950bb4f9dbfc6fa.rlib,libbase64-2829e67f77c8dcad.rlib,libipnet-80647500ed6dce89.rlib,libhyper_tls-1258b518740a9d9d.rlib,libtokio_native_tls-a1a76bed2962227a.rlib,libtower-4153d79a366a5f3c.rlib,libsync_wrapper-76c4a7983009af19.rlib,libtower_layer-0a4a6f04d285eefd.rlib,libnative_tls-1ae0ceae799fbea1.rlib,libopenssl_probe-816bc0d31480c9dc.rlib,libopenssl-66d7eac818944a78.rlib,libforeign_types-a31d648b29f2098a.rlib,libforeign_types_shared-a40c0025a327b671.rlib,libopenssl_sys-c7f56f1fbd95eff6.rlib,libhyper_util-aea3d4a7ce204d17.rlib,libtower_service-526b2832f8ec9b84.rlib,libhyper-75f2562adbdbbf9e.rlib,libwant-b06f45eeb0a87cd7.rlib,libtry_lock-15a122449dbf7469.rlib,libhttparse-4a88e89cc6108bcd.rlib,libh2-d147f98499633d4d.rlib,libatomic_waker-0d2c3214c61e8547.rlib,libtokio_util-2f681883ba652023.rlib,libhttp_body_util-440374061abcf496.rlib,libhttp_body-dd0c0df2faeeda38.rlib,liburl-dd5e86a616aa3d05.rlib,libidna-a538757f99569bd4.rlib,libidna_adapter-dc222f2bd819ce0d.rlib,libicu_normalizer-057560b1c682a7fe.rlib,libicu_normalizer_data-b3a610c49774ea7d.rlib,libwrite16-2156d6393ec3d321.rlib,libutf8_iter-224c4ea1d57e10b4.rlib,libutf16_iter-cd75ca094bf72e60.rlib,libicu_properties-c341a1cbc5f591a0.rlib,libicu_properties_data-a0d98b33bfd7001e.rlib,libicu_locid_transform-dab51a569fef97e9.rlib,libicu_locid_transform_data-f756dc3982d2061c.rlib,libicu_collections-9dcca30a2d77ecd0.rlib,libicu_provider-d757a9589b9acc4a.rlib,libicu_locid-3b56b8366ac75721.rlib,liblitemap-1a95d1b36425345b.rlib,libtinystr-a72f0df0fbca7063.rlib,libzerovec-2a2954c44b2782c7.rlib,libwriteable-7bfb1b1605412a3e.rlib,libyoke-881a71eac0411aa3.rlib,libzerofrom-2ab9d981b5cab172.rlib,libstable_deref_trait-d094b8de272ef02e.rlib,libform_urlencoded-5b8976e732ae5c1e.rlib,libpercent_encoding-f2696032b63a5571.rlib,libhttp-a0fa70ed45028105.rlib,libfnv-1620094921379457.rlib,libchrono-8f6205931051657c.rlib,libiana_time_zone-77e6644b03ac1abc.rlib,libpure_rust_locales-687b20a4510980f1.rlib,libnotify-bce539453ef5f690.rlib,libfiletime-0b9e2fc2deb09549.rlib,libinotify-2e1f650aaa2f73b3.rlib,libinotify_sys-848dc96941120a24.rlib,libnotify_types-ff2579dac41cfb09.rlib,libtracing_appender-4a9fccbf91ac4de7.rlib,libtime-810931a1f41d178e.rlib,libtime_core-0135dec28a096929.rlib,libnum_conv-dd15d4f35140f66c.rlib,libderanged-c78c64f5ce76d0a2.rlib,libpowerfmt-084e662e5a79f79e.rlib,libcrossbeam_channel-1abbe1ec5cad56b8.rlib,libstrip_ansi_escapes-7ca6f82051ab44fa.rlib,libvte-f008d21df1ab8d90.rlib,libwalkdir-8ac15ad309dad68e.rlib,libsame_file-ee4d781a06111def.rlib,liblibpulse_binding-96bd7e3921763de4.rlib,liblibpulse_sys-ddc9852445b95c02.rlib,libsystem_tray-abee4ca0c76f8469.rlib,libdbusmenu_gtk3_sys-91c19291de99301c.rlib,libgdk_pixbuf_sys-a711c76a0d664bd0.rlib,libgio_sys-ed83536dd4640caa.rlib,libdbusmenu_glib_sys-491ede884204d6bb.rlib,libgobject_sys-5343845873af7a49.rlib,libglib_sys-8620a4c6398ae566.rlib,libsysinfo-4faa08272bc3657c.rlib,libzbus-e6e664f7582248c4.rlib,libhex-dd0048815c7e81e6.rlib,libordered_stream-b673623b8ff13b36.rlib,libasync_broadcast-eee43e78883c8ab9.rlib,libnix-bf732f0b8026d00d.rlib,libzbus_names-f39eaac79f1d321b.rlib,libzvariant-27f77c832d898473.rlib,libenumflags2-c653d841f2d5f4c6.rlib,libendi-cc872a20493b3de7.rlib,libzvariant_utils-b35920e11ad85567.rlib,libsyn-3a36f5f956f3945d.rlib,libquote-6355692ae8e06256.rlib,libproc_macro2-c7d4dbf2a3f3feaa.rlib,libunicode_ident-9d7478d46c185987.rlib}" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib/{libproc_macro-ea0908ceef2de05c.rlib}" "/build/ironbar-git/src/ironbar/target/release/deps/{libstatic_assertions-cdb287d24bd7f0f9.rlib,libfutures_signals-c326517eff9ce73d.rlib,libdiscard-23d1136727fd035b.rlib,libpin_project-925879618e200494.rlib,libmpris-83858d779c07121e.rlib,libfrom_variants-63ad6c3f314ea5bc.rlib,libdbus-a35a0d5f7118d4da.rlib,liblibdbus_sys-457508cb6b8af019.rlib,libmpd_utils-21594d2a35c723c7.rlib,libfutures-53a0799ad23b2ed7.rlib,libmpd_client-c6426d29d3e82068.rlib,libmpd_protocol-c515976bb83ca968.rlib,libnom-60cea937a939faf6.rlib,libmlua-85e38adb68fba790.rlib,libeither-6870fbbec25f1a20.rlib,librustc_hash-c6a5dc504898f1e7.rlib,libparking_lot-75a6c6edc204cec4.rlib,libparking_lot_core-c525c118b52bc089.rlib,liblock_api-df23d95abaaccbe0.rlib,libscopeguard-c22ac9bf1ad85f03.rlib,libmlua_sys-8a0439709fc8c5e9.rlib,libbstr-852b9e5d982db3f6.rlib,librustix-d04c6a8d5fd6a3c9.rlib,liblinux_raw_sys-46ecfde9179ffeb8.rlib,libevdev_rs-2ce4be6973883dca.rlib,libbitflags-bdc5b2343179abd4.rlib,libevdev_sys-4446f929b5d9a9f4.rlib,libcolpetto-80684ab95e282306.rlib,libdevil-eea39a41acb8ab9a.rlib,libswayipc_async-f905ccf8c7b349df.rlib,libasync_pidfd_next-7413af94ecaceaa2.rlib,libswayipc_types-3620db6d46f41af7.rlib,libasync_io-34def8458f95dcd6.rlib,libconcurrent_queue-e357f0986736ef2d.rlib,libcrossbeam_utils-0ce26f031829afef.rlib,libasync_lock-11c4da1a371d138c.rlib,libevent_listener_strategy-df21e82702c19bf2.rlib,libevent_listener-c1445655956d4aad.rlib,libfutures_lite-3e51fd070c9748da.rlib,libparking-cf68990e79dcc87e.rlib,libfastrand-aa993140c3844203.rlib,libhyprland-e691ddfd2e5b71ca.rlib,libnum_traits-df9a2187ad04805a.rlib,libahash-2a1cb8e65c300b87.rlib,libgetrandom-ea307ea7dcbfad74.rlib,libzerocopy-eda71ce69f00fb35.rlib,libgtk_layer_shell-93a3a22dcf20391e.rlib,libgtk_layer_shell_sys-8557019bf2e6534d.rlib,libuniversal_config-3a48a857199fa119.rlib,libron-27b250cbde8968bb.rlib,libbase64-99506ccf03093137.rlib,libcorn-23a32d627a67efbc.rlib,libpest-087cddad5f96d665.rlib,libucd_trie-e992a5bb4331d330.rlib,libthiserror-e048c9eebe4adb98.rlib,libtoml-ff8cf513326c490d.rlib,libtoml_edit-7c959c2b5a871787.rlib,libserde_spanned-f69beb3239f3e125.rlib,libwinnow-1863e6a1424d0f7f.rlib,libtoml_datetime-77d52a2580b46a6b.rlib,libserde_yaml-d7489a16fb7b232f.rlib,libindexmap-a593d5e065745486.rlib,libequivalent-fb286702529c81d3.rlib,libhashbrown-94163481bb00f3c3.rlib,libunsafe_libyaml-8bb75915eb280030.rlib,libserde_json-6de433676023c8c2.rlib,libitoa-bea382a3cb3753e5.rlib,libryu-9837472e36f1e75b.rlib,libdirs-b201ff3a540b0dfb.rlib,libdirs_sys-5a62013a7b2c41c9.rlib,libtokio-9c47cefd3ee42e61.rlib,libsignal_hook_registry-3426c10c18c770e2.rlib,libsocket2-77eacb81ca85865e.rlib,libbytes-dc47bbfc9ce4e835.rlib,libmio-fbce156a503082a0.rlib,libsmithay_client_toolkit-fb421c7ac5e1c8cc.rlib,libwayland_cursor-e79bc2ff0a3dbb33.rlib,libxcursor-3675f8236975fee2.rlib,libmemmap2-5939960d4f5b8e9c.rlib,libwayland_protocols_wlr-1daec2a8dc50a47d.rlib,libwayland_protocols-4df6972402f496e9.rlib,libwayland_csd_frame-b106e3d0dfe154ad.rlib,libcursor_icon-59e90458a29c5ab5.rlib,libcalloop_wayland_source-a2fa652f8f50d30e.rlib,libwayland_client-cacef983b9ee0644.rlib,libwayland_backend-10407714e3c2585c.rlib,libdowncast_rs-afe891e6707f3d6e.rlib,libwayland_sys-182c3ee61bc6a246.rlib,libcalloop-bf79f639850b3b30.rlib,libpolling-8504ecfb563de5b7.rlib,librustix-15e33339ec3b17eb.rlib,liblinux_raw_sys-3b9b604ce385c5eb.rlib,libgtk-f8fd31cc3025c418.rlib,libfield_offset-2491bfedd5c8b7d3.rlib,libmemoffset-442ad016264dda1d.rlib,libgdk-3c991948717b93cc.rlib,libpango-858a4adbfbe464eb.rlib,libgdk_pixbuf-f0e23c69bddfee9e.rlib,libgio-6d2108d9e4c79872.rlib,libcairo-2302dbe73a6c20d3.rlib,libatk-95b638f51f4f70c4.rlib,libglib-91444eae5c3cd50f.rlib,libfutures_executor-5abd3b32a8025f42.rlib,libthiserror-aa21be2b6002ccf6.rlib,libfutures_util-6cab369945d2d2d7.rlib,libfutures_io-ff0c89ec793dcce7.rlib,libslab-a3fd21f95fbc4aa1.rlib,libpin_utils-b799d4e33735cf7a.rlib,libfutures_task-ddfb8ebe5c017c01.rlib,libfutures_channel-5355ad4048b37b1a.rlib,libfutures_sink-5a5c7d2823b371c5.rlib,libfutures_core-deed0e72cec7c9cd.rlib,libbitflags-201b50b4ef3ff600.rlib,libserde-6811db7aa75afadd.rlib,libgtk_sys-ea4d4b9c344657dd.rlib,libatk_sys-07c2fa1ad522b233.rlib,libgdk_sys-babdda16ccf816b7.rlib,libpango_sys-c3064ff01e11ee6d.rlib,libgdk_pixbuf_sys-228ec1411309298c.rlib,libgio_sys-37b63b20b5d4bd5e.rlib,libcairo_sys-fdc3388f5110817a.rlib,libgobject_sys-9e83bf0ac03f4464.rlib,libglib_sys-71c117c4e60ac066.rlib,libdirs-785f87e5d105b680.rlib,libdirs_sys-113363c86281519f.rlib,liboption_ext-193dd5fae11941b4.rlib,libcolor_eyre-402c9fd3e937fb0e.rlib,libcolor_spantrace-0b98c220360e740d.rlib,libtracing_error-58dc58b4e321f8bf.rlib,libtracing_subscriber-c88321f69b834997.rlib,libsmallvec-5b2e6d1bba788ec0.rlib,libsharded_slab-fb8594aed0562121.rlib,liblazy_static-31df14ac66df0404.rlib,libmatchers-0c2dc463fe85b61e.rlib,libregex_automata-f01e7df15ea25349.rlib,libregex_syntax-59923d34d9f8946f.rlib,libregex-d88bbae71b9a97a8.rlib,libregex_automata-d7b79f2223bc90c2.rlib,libaho_corasick-0de7408b769fb752.rlib,libregex_syntax-66d4531dde832f93.rlib,libnu_ansi_term-97b24c75d0128250.rlib,liboverload-b6442ac7bb270cb5.rlib,libthread_local-6bcd9e621a20ace4.rlib,libtracing_log-fea0d76054da2bce.rlib,liblog-c96709bd9bdbe885.rlib,libtracing-fc724527004818c9.rlib,libpin_project_lite-0801fd3be8f897ef.rlib,libtracing_core-b5ac8e8bdb5f6cbe.rlib,libowo_colors-9233e3f81f37e0b5.rlib,libeyre-c9ed9e4927b5080e.rlib,libindenter-8b8784305bea8274.rlib,libonce_cell-dc43ff25504a3e7e.rlib,libbacktrace-f9c19154d3ca432e.rlib,libminiz_oxide-bd0ff4ad40313d05.rlib,libadler-150bdb1352432e68.rlib,libobject-6f846d9bd0ad3b84.rlib,libmemchr-fb6804a4a84c6bd5.rlib,liblibc-fda5309f8a83c76e.rlib,libaddr2line-4b554fe8694986f5.rlib,libgimli-13c3898e8e85defd.rlib,librustc_demangle-a265236744e46a92.rlib,libclap-82e302ce982bcd8b.rlib,libclap_builder-f41d7b56d1f236db.rlib,libstrsim-2f1529b5911ba45a.rlib,libanstream-336c7e1e2966edc7.rlib,libanstyle_query-b5fb1a4ac4c0dedc.rlib,libis_terminal_polyfill-be84f7c58d878956.rlib,libcolorchoice-3266b0ed16acd786.rlib,libanstyle_parse-6b3c1fee52ec5d6d.rlib,libutf8parse-6c6edac3356b40a9.rlib,libclap_lex-f103cf3ab80ae5ad.rlib,libanstyle-8daf941377092eeb.rlib,libcfg_if-e7ec7a16d820b263.rlib}" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-38dff5a12bf7cbb5.rlib,libpanic_unwind-64f7521ab6b302bc.rlib,libobject-95d3bf196df2636a.rlib,libmemchr-66730eff58814c9a.rlib,libaddr2line-67ceef29e1470946.rlib,libgimli-b4da0462a8f2ce69.rlib,librustc_demangle-540ac72b54a76225.rlib,libstd_detect-bb00a46b92bfe238.rlib,libhashbrown-370d76d11e5f40b2.rlib,librustc_std_workspace_alloc-ee08182a3484573c.rlib,libminiz_oxide-db0b575f7947f6fa.rlib,libadler-a44df0b6779f1bef.rlib,libunwind-72be102a02ce8f8f.rlib,libcfg_if-86e3feaa4aa78528.rlib,liblibc-28c3d2752f3ed59a.rlib,liballoc-cd47a92b4ce5beb7.rlib,librustc_std_workspace_core-5713de60ee4ecbd9.rlib,libcore-b235a05cfe4944f1.rlib,libcompiler_builtins-b324919e01cfb96a.rlib}" "-Wl,-Bdynamic" "-lssl" "-lcrypto" "-lpulse" "-ldbusmenu-gtk3" "-ldbusmenu-glib" "-lgtk-3" "-lgdk-3" "-lz" "-lpangocairo-1.0" "-lcairo-gobject" "-lgdk_pixbuf-2.0" "-latk-1.0" "-lpango-1.0" "-lcairo" "-lharfbuzz" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgdk_pixbuf-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-ldbusmenu-glib" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lglib-2.0" "-ldbus-1" "-lluajit-5.1" "-levdev" "-linput" "-ludev" "-lgtk-layer-shell" "-lgobject-2.0" "-lgtk-3" "-lgdk-3" "-lz" "-lpangocairo-1.0" "-lcairo-gobject" "-lgdk_pixbuf-2.0" "-latk-1.0" "-lpango-1.0" "-lcairo" "-lharfbuzz" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-latk-1.0" "-lgobject-2.0" "-lglib-2.0" "-lgdk-3" "-lz" "-lpangocairo-1.0" "-lpango-1.0" "-lgdk_pixbuf-2.0" "-lcairo-gobject" "-lgobject-2.0" "-lcairo" "-lharfbuzz" "-lglib-2.0" "-lpango-1.0" "-lgobject-2.0" "-lharfbuzz" "-lglib-2.0" "-lgdk_pixbuf-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-lcairo-gobject" "-lcairo" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/usr/lib" "-L" "/build/ironbar-git/src/ironbar/target/release/build/colpetto-870d157cbd760447/out" "-L" "/usr/lib" "-L" "/usr/lib" "-L" "/usr/lib" "-L" "/usr/lib" "-L" "/usr/lib64/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/build/ironbar-git/src/ironbar/target/release/deps/ironbar-eae3fa6831b4f692" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-Wl,--strip-debug" "-nodefaultlibs" = note: some arguments are omitted. use `--verbose` to show all linker arguments = note: /usr/bin/ld: /build/ironbar-git/src/ironbar/target/release/deps/libcolpetto-80684ab95e282306.rlib(colpetto-80684ab95e282306.colpetto.45f545efd86caf2f-cgu.0.rcgu.o): in function `colpetto::logger::setup_logger': /build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colpetto-0.6.0/src/logger.rs:21:(.text._ZN8colpetto6logger12setup_logger17hed6ea00f7083fbe3E+0x13): undefined reference to `set_log_callback' /usr/bin/ld: /build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colpetto-0.6.0/src/logger.rs:32:(.text._ZN8colpetto6logger12setup_logger17hed6ea00f7083fbe3E+0x27): undefined reference to `get_log_handler' 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#rustc-link-lib) error: could not compile `ironbar` (bin "ironbar") due to 1 previous error ``` **Screenshots** N/A
Author
Owner

@JakeStanger commented on GitHub (Apr 4, 2025):

That's an odd error that it's failing with at the system level. Can you check the following please:

$ cargo --version && pacman -Q libinput xf86-input-evdev pkg-config
cargo 1.85.1 (d73d2caf9 2024-12-31)
libinput 1.28.1-1
xf86-input-evdev 2.11.0-1
pkgconf 2.4.3-1
<!-- gh-comment-id:2779674323 --> @JakeStanger commented on GitHub (Apr 4, 2025): That's an odd error that it's failing with at the system level. Can you check the following please: ```shell $ cargo --version && pacman -Q libinput xf86-input-evdev pkg-config cargo 1.85.1 (d73d2caf9 2024-12-31) libinput 1.28.1-1 xf86-input-evdev 2.11.0-1 pkgconf 2.4.3-1 ```
Author
Owner

@quietvoid commented on GitHub (Apr 4, 2025):

Getting the same here.

❯ cargo --version && pacman -Q libinput xf86-input-evdev pkg-config
cargo 1.86.0 (adf9b6ad1 2025-02-28)
libinput 1.28.1-1
error: package 'xf86-input-evdev' was not found
pkgconf 2.4.3-1

I use Wayland but had no issue building previously.

<!-- gh-comment-id:2779880111 --> @quietvoid commented on GitHub (Apr 4, 2025): Getting the same here. ```sh ❯ cargo --version && pacman -Q libinput xf86-input-evdev pkg-config cargo 1.86.0 (adf9b6ad1 2025-02-28) libinput 1.28.1-1 error: package 'xf86-input-evdev' was not found pkgconf 2.4.3-1 ``` I use Wayland but had no issue building previously.
Author
Owner

@JakeStanger commented on GitHub (Apr 4, 2025):

It could be the evdev package. With that it builds fine for me in isolation. If not I'll have a more in depth look when I can.

<!-- gh-comment-id:2779894429 --> @JakeStanger commented on GitHub (Apr 4, 2025): It could be the evdev package. With that it builds fine for me in isolation. If not I'll have a more in depth look when I can.
Author
Owner

@quietvoid commented on GitHub (Apr 4, 2025):

Still doesn't build after installing xf86-input-evdev for me.
I have no problem building colpetto on its own FWIW.

<!-- gh-comment-id:2779905613 --> @quietvoid commented on GitHub (Apr 4, 2025): Still doesn't build after installing `xf86-input-evdev` for me. I have no problem building `colpetto` on its own FWIW.
Author
Owner

@JakeStanger commented on GitHub (Apr 5, 2025):

I can confirm it breaks for me running pkgctl build. It works in a clean docker container though, so not sure what that's about.

If you run using just makepkg -s does it work?

<!-- gh-comment-id:2781079430 --> @JakeStanger commented on GitHub (Apr 5, 2025): I can confirm it breaks for me running `pkgctl build`. It works in a clean docker container though, so not sure what that's about. If you run using just `makepkg -s` does it work?
Author
Owner

@quietvoid commented on GitHub (Apr 5, 2025):

Does not work with makepkg either.

<!-- gh-comment-id:2781081959 --> @quietvoid commented on GitHub (Apr 5, 2025): Does not work with `makepkg` either.
Author
Owner

@JakeStanger commented on GitHub (Apr 5, 2025):

Can you upload the full build log if possible please?

Also paging @morr0ne

<!-- gh-comment-id:2781082661 --> @JakeStanger commented on GitHub (Apr 5, 2025): Can you upload the full build log if possible please? Also paging @morr0ne
Author
Owner

@quietvoid commented on GitHub (Apr 5, 2025):

Looks like this: build.txt

It only seems to fail building the package, manually building with cargo works fine.

<!-- gh-comment-id:2781086638 --> @quietvoid commented on GitHub (Apr 5, 2025): Looks like this: [build.txt](https://github.com/user-attachments/files/19618376/build.txt) It only seems to fail building the package, manually building with cargo works fine.
Author
Owner

@puppymati commented on GitHub (Apr 5, 2025):

I am almost certain that what's happening is the linker failing to find the C helper and not including it. I do wonder what changes between a clean chroot and normal builds. My naive assumption is that we need some extra deps or possibly linker args. It would help having a full verbose log of makepkg. It seems that verdi also fails to build so maybe it's worth opening an issue on the colpetto repo.

<!-- gh-comment-id:2781092565 --> @puppymati commented on GitHub (Apr 5, 2025): I am almost certain that what's happening is the linker failing to find the C helper and not including it. I do wonder what changes between a clean chroot and normal builds. My naive assumption is that we need some extra deps or possibly linker args. It would help having a full verbose log of makepkg. It seems that verdi also fails to build so maybe it's worth opening an issue on the colpetto repo.
Author
Owner

@JakeStanger commented on GitHub (Apr 5, 2025):

Yep, I've done sanity checks on just about everything else I can think of at this point. Nothing's getting stripped out and all the symbols are there, the linker just doesn't see it.

Everything points to it being either a missing dep, or a difference in compiler/linker configs.

<!-- gh-comment-id:2781121924 --> @JakeStanger commented on GitHub (Apr 5, 2025): Yep, I've done sanity checks on just about everything else I can think of at this point. Nothing's getting stripped out and all the symbols are there, the linker just doesn't see it. Everything points to it being either a missing dep, or a difference in compiler/linker configs.
Author
Owner

@quietvoid commented on GitHub (Apr 6, 2025):

I have managed to build it when adding options=("!buildflags") to the PKGBUILD: https://wiki.archlinux.org/title/Makepkg#Makepkg_fails,_but_make_succeeds

My makepkg.conf has these:

CFLAGS="-march=native -O2 -pipe -fno-plt -fexceptions \
        -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security \
        -fstack-clash-protection -fcf-protection \
        -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"
CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now \
         -Wl,-z,pack-relative-relocs"

Not sure because if I do add these flags (exporting or before cargo build), it still builds and links fine.

<!-- gh-comment-id:2781160509 --> @quietvoid commented on GitHub (Apr 6, 2025): I have managed to build it when adding `options=("!buildflags")` to the PKGBUILD: https://wiki.archlinux.org/title/Makepkg#Makepkg_fails,_but_make_succeeds My makepkg.conf has these: ``` CFLAGS="-march=native -O2 -pipe -fno-plt -fexceptions \ -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security \ -fstack-clash-protection -fcf-protection \ -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer" CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS" LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now \ -Wl,-z,pack-relative-relocs" ``` Not sure because if I do add these flags (exporting or before `cargo build`), it still builds and links fine.
Author
Owner

@quietvoid commented on GitHub (Apr 6, 2025):

This is as verbose as I can get things to be: ironbar-git-0.16.1.r212.gf2bc33e-1-x86_64-build.log

<!-- gh-comment-id:2781164594 --> @quietvoid commented on GitHub (Apr 6, 2025): This is as verbose as I can get things to be: [ironbar-git-0.16.1.r212.gf2bc33e-1-x86_64-build.log](https://github.com/user-attachments/files/19619160/ironbar-git-0.16.1.r212.gf2bc33e-1-x86_64-build.log)
Author
Owner

@JakeStanger commented on GitHub (Apr 7, 2025):

Thanks for the extra info, that seems like a promising lead. Hoping to track this down tonight.

<!-- gh-comment-id:2782479910 --> @JakeStanger commented on GitHub (Apr 7, 2025): Thanks for the extra info, that seems like a promising lead. Hoping to track this down tonight.
Author
Owner

@JakeStanger commented on GitHub (Apr 7, 2025):

Haven't had a chance to test yet, but here's my flags for comparison. There are a few differences so presumably one of them is the cause

CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \
        -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \
        -fstack-clash-protection -fcf-protection"
CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
<!-- gh-comment-id:2784254522 --> @JakeStanger commented on GitHub (Apr 7, 2025): Haven't had a chance to test yet, but here's my flags for comparison. There are a few differences so presumably one of them is the cause ```sh CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \ -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \ -fstack-clash-protection -fcf-protection" CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS" LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" ```
Author
Owner

@JakeStanger commented on GitHub (Apr 7, 2025):

Alright yeah I've no idea, but I've confirmed exactly what you found. None of the flags seem responsible, and just pasting the flags as-is into the PKGBUILD works fine. It's only when they're imported from the pkgbuild file, which points to a bug in Arch's build system to me?

Until anybody suggests anything better, I've put options=("!buildflags") and the default flags inside the PKGBUILD so it should build now.

Please let me know if that seems to have sorted it.

<!-- gh-comment-id:2784715901 --> @JakeStanger commented on GitHub (Apr 7, 2025): Alright yeah I've no idea, but I've confirmed exactly what you found. None of the flags seem responsible, and just pasting the flags as-is into the PKGBUILD works fine. It's only when they're imported from the pkgbuild file, which points to a bug in Arch's build system to me? Until anybody suggests anything better, I've put `options=("!buildflags")` and the default flags inside the PKGBUILD so it should build now. Please let me know if that seems to have sorted it.
Author
Owner

@quietvoid commented on GitHub (Apr 7, 2025):

It works fine now but the fix is a bit weird.

<!-- gh-comment-id:2784849820 --> @quietvoid commented on GitHub (Apr 7, 2025): It works fine now but the fix is a bit weird.
Author
Owner

@quietvoid commented on GitHub (Apr 8, 2025):

It can be reproduced with -flto / -flto=auto alone by the way.

<!-- gh-comment-id:2784921333 --> @quietvoid commented on GitHub (Apr 8, 2025): It can be reproduced with `-flto` / `-flto=auto` alone by the way.
Author
Owner

@kode54 commented on GitHub (Apr 8, 2025):

Yes, Arch enables LTO by default. Bugs with LTO can be worked around by the application of:

options=('!lto')

Edit: Also, technically, you were missing the RUSTFLAGS from /etc/makepkg.conf.d/rust.conf, but that wasn't the cause of the problem.

Edit 2: Yup, builds with !lto and none of the other stuff.

<!-- gh-comment-id:2785906457 --> @kode54 commented on GitHub (Apr 8, 2025): Yes, Arch enables LTO by default. Bugs with LTO can be worked around by the application of: ``` options=('!lto') ``` Edit: Also, technically, you were missing the RUSTFLAGS from /etc/makepkg.conf.d/rust.conf, but that wasn't the cause of the problem. Edit 2: Yup, builds with !lto and none of the other stuff.
Author
Owner

@JakeStanger commented on GitHub (Apr 8, 2025):

I've been talking to @morr0ne in the background, and based off the above (thanks again for all the help) she believes it was just a small issue in the crate where functions weren't correctly marked as extern. This hit a bit of an edge-case because LTO is enabled by default for C but not Rust (I think).

The takeaway from that is that there should now be a proper fix in place in the colpetto crate as of this commit, and hopefully this can be resolved without needing to resort to disabling LTO.

I will test, confirm and update the PKGBUILD later.

<!-- gh-comment-id:2786419950 --> @JakeStanger commented on GitHub (Apr 8, 2025): I've been talking to @morr0ne in the background, and based off the above (thanks again for all the help) she believes it was just a small issue in the crate where functions weren't correctly marked as `extern`. This hit a bit of an edge-case because LTO is enabled by default for C but not Rust (I think). The takeaway from that is that there should now be a proper fix in place in the colpetto crate as of [this commit](https://github.com/verdiwm/colpetto/commit/6108f5e832d6e1df27760ca8ec32e045e104c127), and hopefully this can be resolved without needing to resort to disabling LTO. I will test, confirm and update the PKGBUILD later.
Author
Owner

@JakeStanger commented on GitHub (Apr 8, 2025):

Confirmed it's LTO. Seems that was enabled by default a few years back, and my own install predates that so checks out.

Colpetto commit doesn't seem to have fixed the build in Ironbar for some reason, so I'll push up an update to the makepkg that just disables LTO instead of yesterday's hack.

<!-- gh-comment-id:2787706772 --> @JakeStanger commented on GitHub (Apr 8, 2025): Confirmed it's LTO. Seems that was enabled by default a few years back, and my own install predates that so checks out. Colpetto commit doesn't seem to have fixed the build in Ironbar for some reason, so I'll push up an update to the makepkg that just disables LTO instead of yesterday's hack.
Author
Owner

@mati865 commented on GitHub (Jul 3, 2025):

I think disabling LTO in PKGBUILD is a valid solution here.
First of all, that option AFAIK only enables C/C++ LTO which itself is not going to be noticeable for that library even if it worked.
If you want to get it to work, you have to use -C linker-plugin-lto which complicates things a bit. You have to build C code with Clang version that roughly matches LLVM version used by Rust and finally use LLD (maybe Mold would also work) for linking.

So, that's a lot of hassle for often a little benefit (unless your C code does some heavy lifting). Notice how all Arch Linux packages that use Rust and depend on C libraries also disable lto option.

That's because when LTO is enabled, GCC/Clang will emit only GIMPLE or LLVM IR bitcode instead of machine code. This can be overriden by using not just CFLAGS=-flto but CFLAGS="-flto -ffat-lto-objects". This will make them emit both bitcode and machine code, so the linker can pick either. Note, this gives no benefit over disabling LTO in this case and just slows down compilation.

Note this is different from LTO level that you configure in Cargo.toml. That optimisation works only on Rust code and is performed before outputting final objects, so also before the linker is involved.

<!-- gh-comment-id:3033356888 --> @mati865 commented on GitHub (Jul 3, 2025): I think disabling LTO in PKGBUILD is a valid solution here. First of all, that option AFAIK only enables C/C++ LTO which itself is not going to be noticeable for that library even if it worked. If you want to get it to work, you have to use `-C linker-plugin-lto` which complicates things a bit. You have to build C code with Clang version that roughly matches LLVM version used by Rust and finally use LLD (maybe Mold would also work) for linking. So, that's a lot of hassle for often a little benefit (unless your C code does some heavy lifting). Notice how all Arch Linux packages that use Rust and depend on C libraries also disable `lto` option. That's because when LTO is enabled, GCC/Clang will emit only GIMPLE or LLVM IR bitcode instead of machine code. This can be overriden by using not just `CFLAGS=-flto` but `CFLAGS="-flto -ffat-lto-objects"`. This will make them emit both bitcode and machine code, so the linker can pick either. Note, this gives no benefit over disabling LTO in this case and just slows down compilation. Note this is different from LTO level that you configure in `Cargo.toml`. That optimisation works only on Rust code and is performed before outputting final objects, so also before the linker is involved.
Author
Owner

@JakeStanger commented on GitHub (Jul 7, 2025):

That's a convincing enough argument to close this issue for now at least. If it does cause issues or a better solution presents itself, we can re-open. Thanks for your input!

<!-- gh-comment-id:3044297841 --> @JakeStanger commented on GitHub (Jul 7, 2025): That's a convincing enough argument to close this issue for now at least. If it does cause issues or a better solution presents itself, we can re-open. Thanks for your input!
Author
Owner

@puppymati commented on GitHub (Jul 7, 2025):

Just to add a little post-mortem. Using linker-plugin-lto does work and that's why I never noticed the issue; verdi itself is built using the linker flag and the arch packages build properly with lto:

github.com/morr0ne/xtask-common@6cfcb9b685/src/lib.rs (L71)

<!-- gh-comment-id:3044443014 --> @puppymati commented on GitHub (Jul 7, 2025): Just to add a little post-mortem. Using linker-plugin-lto does work and that's why I never noticed the issue; verdi itself is built using the linker flag and the arch packages build properly with lto: https://github.com/morr0ne/xtask-common/blob/6cfcb9b68548ed12dd1483bc25203740af8f267c/src/lib.rs#L71
Author
Owner

@mati865 commented on GitHub (Jul 7, 2025):

BTW, I forgot to mention it last time but github.com/verdiwm/colpetto@6108f5e832 is not a correct way to do it. extern should be placed only on the declaration and not on the definition.
The correct way to let the compiler know to emit a specific function is to add attribute__((used)) to its definition. The linker might still optimise it out however.

<!-- gh-comment-id:3045399286 --> @mati865 commented on GitHub (Jul 7, 2025): BTW, I forgot to mention it last time but https://github.com/verdiwm/colpetto/commit/6108f5e832d6e1df27760ca8ec32e045e104c127 is not a correct way to do it. `extern` should be placed only on the declaration and not on the definition. The correct way to let the compiler know to emit a specific function is to add `attribute__((used))` to its definition. The linker might still optimise it out however.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
JakeStanger/ironbar#276
No description provided.