Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Nov 2013 20:19:49 -0500
From:      Glen Barber <gjb@FreeBSD.org>
To:        Manfred Antar <null@pozo.com>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Buildworld broken with WITHOUT_DYNAMICROOT=yes in src.conf
Message-ID:  <20131125011949.GC1627@glenbarber.us>
In-Reply-To: <201311250111.rAP1BuI0009520@pozo.com>
References:  <201311250111.rAP1BuI0009520@pozo.com>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
On Sun, Nov 24, 2013 at 05:11:51PM -0800, Manfred Antar wrote:
> Since the changes to libc in the last few weeks.
> building world fails in /bin/csh
> 
> cc -O2 -pipe  -I. -I/usr/src/bin/csh -I/usr/src/bin/csh/../../contrib/tcsh -D_PATH_TCSHELL='"/bin/csh"' -DHAVE_ICONV -std=gnu99 -Qunused-arguments -fstack-protector -Wsystem-headers -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-conversion -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Wno-parentheses  -static -o csh sh.o sh.dir.o sh.dol.o sh.err.o sh.exec.o sh.char.o sh.exp.o sh.file.o sh.func.o sh.glob.o sh.hist.o sh.init.o sh.lex.o sh.misc.o sh.parse.o sh.print.o sh.proc.o sh.sem.o sh.set.o sh.time.o glob.o mi.termios.o tw.help.o tw.init.o tw.parse.o tw.spell.o tw.comp.o tw.color.o ed.chared.o ed.defns.o ed.init.o ed.inputl.o ed.refresh.o ed.screen.o ed.xmap.o ed.term.o tc.alloc.o tc.bind.o tc.const.o tc.disc.o tc.func.o tc.nls.o tc.os.o tc.printf.o tc.prompt.o tc.sched.o tc.sig.o tc.str.o tc.vers.o tc.who.o tc.defs.o -ltermcap -lcrypt
> sh.func.o: In function `nlsclose':
> /usr/src/bin/csh/../../contrib/tcsh/sh.func.c:(.text+0x2753): undefined reference to `iconv_close'
> sh.func.o: In function `nlsinit':
> /usr/src/bin/csh/../../contrib/tcsh/sh.func.c:(.text+0x2874): undefined reference to `iconv_open'
> sh.func.o: In function `iconv_catgets':
> /usr/src/bin/csh/../../contrib/tcsh/sh.func.c:(.text+0x3f9a): undefined reference to `iconv'
> cc: error: linker command failed with exit code 1 (use -v to see invocation)
> *** Error code 1
> 
> If I add -lc_nonshared to the LADD= line it builds fine 
> 
> cc -O2 -pipe  -I. -I/usr/src/bin/csh -I/usr/src/bin/csh/../../contrib/tcsh -D_PATH_TCSHELL='"/bin/csh"' -DHAVE_ICONV -std=gnu99 -Qunused-arguments -fstack-protector -Wsystem-headers -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-conversion -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Wno-parentheses  -static -o csh sh.o sh.dir.o sh.dol.o sh.err.o sh.exec.o sh.char.o sh.exp.o sh.file.o sh.func.o sh.glob.o sh.hist.o sh.init.o sh.lex.o sh.misc.o sh.parse.o sh.print.o sh.proc.o sh.sem.o sh.set.o sh.time.o glob.o mi.termios.o tw.help.o tw.init.o tw.parse.o tw.spell.o tw.comp.o tw.color.o ed.chared.o ed.defns.o ed.init.o ed.inputl.o ed.refresh.o ed.screen.o ed.xmap.o ed.term.o tc.alloc.o tc.bind.o tc.const.o tc.disc.o tc.func.o tc.nls.o tc.os.o tc.printf.o tc.prompt.o tc.sched.o tc.sig.o tc.str.o tc.vers.o tc.who.o tc.defs.o -ltermcap -lcrypt -lc_nonshared
> 
> Not sure what rule to use.
> I don't know how many people use WITHOUT_DYNAMICROOT
> I like it though.
> Manfred
> 

I think WITHOUT_DYNAMICROOT=1 has nothing to do with this.  I worked
around it by setting WITHOUT_NLS_CATALOGS=1 (see src.conf(5)).

The relevant parts of the contrib/tcsh/sh.func.c are:

2578 # if defined(HAVE_ICONV) && defined(HAVE_NL_LANGINFO)
2579 char *
2580 iconv_catgets(nl_catd ctd, int set_id, int msg_id, const char *s)
2581 {
2582     static char *buf = NULL;
2583     static size_t buf_size = 0;

Glen


[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (FreeBSD)

iQIcBAEBCAAGBQJSkqW1AAoJELls3eqvi17QBgQQALwY2MkyavKLPmyXUcjMl2OT
Ec2tmJ765C7+3NWWFL+zKDHPealk27m8h2BVCWXVTfJB6803jVdXJLEav3PM5Kjj
I3UHF8A0p6nmyErqO2VuVK6lU/1bAEk67nbkBJZ7liUR13iGW+YXcPFQMq1XF0Q1
zT1XDr088m4Wm+vRJ0zXQSwckFWrsZSfMjKQ28Hm+Bh/MEmEhWoYrjBcdVyBFH/g
8gZ19NbO26lKt1u9KrYkuq/Gqo1Gfy5YtO5MoY86Yl9p6IBZYJCPl8Gqj/OOYYo6
NvmQDBnNXEp2EQPWgfJT5PR0w3niCletRnTEnqPvMXEvrqm+c9kviFVX/ugISPcH
dvNblGJyURsZVpR2w19tnjRksAGPNw3zmtxQiRqFBfNh/XN7SSk7iqsDNoiBjJ0g
NEjtk5Kd2y34PHxwo+FHhhuFN6DZpLaKj3sWr7ifwplCSvm0pPoF0hyLYIa5T6xp
S7DGWUWToUk6QhHJySwoL1tNGGKr+pAPkGQ7MLCgqUpBWgHVi312/r/RE+O0MIn0
18Ir0yVSuCEd/KDzXcdOO/rhbxZRHtb4KGek2TbIgBKKzm71A7ZHt//3Qm1SfAhd
hRvovTNAKLw09pbvYjvr1Im2O1EY5xOSC94DjWfdGkgwkXrOrs+0NPSUVCK9Arqk
nli4Gs1izB6AHZjI8bkk
=3rqL
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131125011949.GC1627>