Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 943200 - sys-fs/xfsprogs-6.11: link failure with icu-76.1 in xfs_scrub: undefined reference to symbol 'u_strcmp'
Summary: sys-fs/xfsprogs-6.11: link failure with icu-76.1 in xfs_scrub: undefined refe...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-11-10 21:05 UTC by Holger Hoffstätte
Modified: 2024-11-10 21:23 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
config.log for failed build (config.log,61.92 KB, text/x-log)
2024-11-10 21:08 UTC, Holger Hoffstätte
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Holger Hoffstätte 2024-11-10 21:05:39 UTC
After update of icu to 76.1 xfsprogs failed rebuild:

Building scrub
/usr/bin/gmake --no-print-directory Q= -q -C scrub || /usr/bin/gmake --no-print-directory Q= -C scrub
x86_64-pc-linux-gnu-gcc -MM -pipe -march=sandybridge -O2 -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wno-address-of-packed-member    -DNDEBUG -DVERSION=\"6.11.0\" -DLOCALEDIR=\"/usr/share/locale\" -DPACKAGE=\"xfsprogs\" -I../include -I../libxfs -I.. -D_LGPL_SOURCE -D_GNU_SOURCE -funsigned-char -fno-strict-aliasing -Wall -DHAVE_GETFSMAP -DHAVE_LIBURCU_ATOMIC64 -DHAVE_MALLINFO -DHAVE_MALLINFO2 -DHAVE_LIBICU  common.c counter.c descr.c disk.c filemap.c fscounters.c inodes.c phase1.c phase2.c phase3.c phase4.c phase5.c phase6.c phase7.c phase8.c progress.c read_verify.c repair.c scrub.c spacemap.c vfs.c xfs_scrub.c unicrash.c > .dep
rm -f .dep
    [LD]     xfs_scrub
/bin/sh ../libtool --quiet --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -o xfs_scrub  -Wl,-O1,--as-needed,-z,now,-z,pack-relative-relocs -static  common.o counter.o descr.o disk.o filemap.o fscounters.o inodes.o phase1.o phase2.o phase3.o phase4.o phase5.o phase6.o phase7.o phase8.o progress.o read_verify.o repair.o scrub.o spacemap.o vfs.o xfs_scrub.o unicrash.o   ../libhandle/libhandle.la ../libfrog/libfrog.la -licui18n -lrt -lurcu -lpthread  
/usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: unicrash.o: undefined reference to symbol 'u_strcmp'
/usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libicuuc.so.76: error adding symbols: DSO missing from command line


Reproducible: Always

Steps to Reproduce:
1. emerge icu-76.1
2. rebuild xfsprogs-6.11
Comment 1 Holger Hoffstätte 2024-11-10 21:08:42 UTC
Created attachment 908409 [details]
config.log for failed build
Comment 2 Larry the Git Cow gentoo-dev 2024-11-10 21:19:25 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5de097998a3ed84e9af43fce547aa143b5e61c14

commit 5de097998a3ed84e9af43fce547aa143b5e61c14
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2024-11-10 21:17:11 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-11-10 21:18:53 +0000

    dev-libs/icu: undo Requires change in .pc file
    
    Undo change for now which exposes underlinking in consumers;
    revisit when things are a bit quieter and tinderbox its removal.
    
    Things are quite hectic atm with slotted Rust and so on, and don't
    really have the energy to handle fallout from the change.
    
    Closes: https://bugs.gentoo.org/943201
    Closes: https://bugs.gentoo.org/943200
    Signed-off-by: Sam James <sam@gentoo.org>

 .../icu-76.1-undo-pkgconfig-change-for-now.patch   | 30 ++++++++++++++++++++++
 .../icu/{icu-76.1.ebuild => icu-76.1-r1.ebuild}    |  4 +++
 2 files changed, 34 insertions(+)
Comment 3 Holger Hoffstätte 2024-11-10 21:23:29 UTC
I yolo'd the following into scrub/Makefile and now it builds:

--snip--
--- xfsprogs-6.11.0/scrub/Makefile~	2024-11-10 22:14:11.000000000 +0100
+++ xfsprogs-6.11.0/scrub/Makefile	2024-11-10 22:15:16.793012689 +0100
@@ -102,6 +102,7 @@
 ifeq ($(HAVE_LIBICU),yes)
 CFILES += unicrash.c
 LCFLAGS += -DHAVE_LIBICU $(LIBICU_CFLAGS)
+LDFLAGS += -licuuc
 endif
 
 # Automatically trigger a media scan once per month
--snip--