Wind River Support Network

HomeDefectsLIN8-5486
Fixed

LIN8-5486 : glibc_tiny compilation of util-linux failed: undefined reference to `fgetws'

Created: Jan 3, 2017    Updated: Dec 3, 2018
Resolved Date: Feb 14, 2017
Found In Version: 8.0.0.12
Fix Version: 8.0.0.14
Severity: Severe
Applicable for: Wind River Linux 8
Component/s: Userspace

Description

Possibly ~ the same as LIN7-108?????

Tried to build x86_64 with tiny kernel, glibc_tiny rootfs, and containerized config option.

| x86_64-wrs-linux-libtool: link: x86_64-wrs-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse -msse4.2 --sysroot=/home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/sysroots/intel-x86-64 -fsigned-char -fno-common -Wall -Werror=sequence-point -Wextra -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wno-missing-field-initializers -Wredundant-decls -Wsign-compare -Wtype-limits -Wuninitialized -Wunused-but-set-parameter -Wunused-but-set-variable -Wunused-parameter -Wunused-result -Wunused-variable -Wnested-externs -Wpointer-arith -Wstrict-prototypes -Wimplicit-function-declaration -O2 -pipe -g -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o rev text-utils/rev.o
| text-utils/rev.o: In function `main':
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/rev.c:150: undefined reference to `fgetws'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/rev.c:162: undefined reference to `fgetws'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/rev.c:170: undefined reference to `fputws'
| collect2: error: ld returned 1 exit status
| Makefile:6069: recipe for target 'rev' failed
| make[2]: *** [rev] Error 1
| make[2]: *** Waiting for unfinished jobs....
| x86_64-wrs-linux-libtool: link: x86_64-wrs-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse -msse4.2 --sysroot=/home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/sysroots/intel-x86-64 -fsigned-char -fno-common -Wall -Werror=sequence-point -Wextra -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wno-missing-field-initializers -Wredundant-decls -Wsign-compare 
-Wtype-limits -Wuninitialized -Wunused-but-set-parameter -Wunused-but-set-variable -Wunused-parameter -Wunused-result -Wunused-variable -Wnested-externs -Wpointer-arith -Wstrict-prototypes -Wimplicit-function-declaration -O2 -pipe -g -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o colcrt text-utils/colcrt.o
| text-utils/colcrt.o: In function `pflush':
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:272: undefined reference to `putwchar'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:277: undefined reference to `putwchar'
| text-utils/colcrt.o: In function `colcrt':
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:153: undefined reference to `getwc'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:170: undefined reference to `getwc'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:153: undefined reference to `getwc'
| collect2: error: ld returned 1 exit status
| Makefile:5640: recipe for target 'colcrt' failed
| make[2]: *** [colcrt] Error 1
| make[2]: Leaving directory '/home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/build'
| Makefile:10727: recipe for target 'all-recursive' failed
| make[1]: *** [all-recursive] Error 1
| make[1]: Leaving directory '/home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/build'
| Makefile:4616: recipe for target 'all' failed
| make: *** [all] Error 2
| WARNING: /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/temp/do_compile/run.do_compile.28428:1 exit 1 from
|   exit 1
| ERROR: oe_runmake failed
| ERROR: Function failed: do_compile (log file is located at /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/temp/do_compile/log.do_compile.28428)
ERROR: Task 514 (/home/demo/WindRiverWRL8/wsovp/tiny_prj/layers/oe-core/meta/recipes-core/util-linux/util-linux_2.26.2.bb, do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 1397 tasks of which 78 didn't need to be rerun and 1 failed.
NOTE: Build completion summary:
NOTE:   do_populate_sysroot: 0% sstate reuse (0 setscene, 123 scratch)
NOTE:   do_package_qa: 0% sstate reuse (0 setscene, 10 scratch)
NOTE:   do_package: 0% sstate reuse (0 setscene, 31 scratch)
NOTE:   do_packagedata: 0% sstate reuse (0 setscene, 28 scratch)
NOTE:   do_package_write_rpm: 0% sstate reuse (0 setscene, 15 scratch)
NOTE:   do_populate_lic: 39% sstate reuse (65 setscene, 98 scratch)
Waiting for 0 running tasks to finish:

Summary: 1 task failed:
  /home/demo/WindRiverWRL8/wsovp/tiny_prj/layers/oe-core/meta/recipes-core/util-linux/util-linux_2.26.2.bb, do_compile
Summary: There were 2 WARNING messages shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
Makefile:120: recipe for target 'export-dist' failed
make: *** [export-dist] Error 1
demo@gamer-linux:~/WindRiverWRL8/wsovp/tiny_prj$

Workaround

Apply attached patch to layers/oe-core after configuring the project.

Steps to Reproduce

/home/demo/WindRiverWRL8/wrlinux-8/wrlinux/configure --enable-reconfig --enable-board=intel-x86-64 --enable-kernel=tiny --enable-rootfs=glibc-tiny --enable-build=production --enable-bootimage=tar.bz2,iso --enable-jobs=6 --enable-parallel-pkgbuilds=6 --enable-internet-download=yes --enable-scalable=yes --enable-container=yes --with-rcpl-version=0012

make fs
.
| x86_64-wrs-linux-libtool: link: x86_64-wrs-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse -msse4.2 --sysroot=/home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/sysroots/intel-x86-64 -fsigned-char -fno-common -Wall -Werror=sequence-point -Wextra -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wno-missing-field-initializers -Wredundant-decls -Wsign-compare -Wtype-limits -Wuninitialized -Wunused-but-set-parameter -Wunused-but-set-variable -Wunused-parameter -Wunused-result -Wunused-variable -Wnested-externs -Wpointer-arith -Wstrict-prototypes -Wimplicit-function-declaration -O2 -pipe -g -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o rev text-utils/rev.o
| text-utils/rev.o: In function `main':
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/rev.c:150: undefined reference to `fgetws'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/rev.c:162: undefined reference to `fgetws'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/rev.c:170: undefined reference to `fputws'
| collect2: error: ld returned 1 exit status
| Makefile:6069: recipe for target 'rev' failed
| make[2]: *** [rev] Error 1
| make[2]: *** Waiting for unfinished jobs....
| x86_64-wrs-linux-libtool: link: x86_64-wrs-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse -msse4.2 --sysroot=/home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/sysroots/intel-x86-64 -fsigned-char -fno-common -Wall -Werror=sequence-point -Wextra -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wno-missing-field-initializers -Wredundant-decls -Wsign-compare -Wtype-limits -Wuninitialized -Wunused-but-set-parameter -Wunused-but-set-variable -Wunused-parameter -Wunused-result -Wunused-variable -Wnested-externs -Wpointer-arith -Wstrict-prototypes -Wimplicit-function-declaration -O2 -pipe -g -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o colcrt text-utils/colcrt.o
| text-utils/colcrt.o: In function `pflush':
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:272: undefined reference to `putwchar'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:277: undefined reference to `putwchar'
| text-utils/colcrt.o: In function `colcrt':
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:153: undefined reference to `getwc'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:170: undefined reference to `getwc'
| /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/util-linux-2.26.2/text-utils/colcrt.c:153: undefined reference to `getwc'
| collect2: error: ld returned 1 exit status
| Makefile:5640: recipe for target 'colcrt' failed
| make[2]: *** [colcrt] Error 1
| make[2]: Leaving directory '/home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/build'
| Makefile:10727: recipe for target 'all-recursive' failed
| make[1]: *** [all-recursive] Error 1
| make[1]: Leaving directory '/home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/build'
| Makefile:4616: recipe for target 'all' failed
| make: *** [all] Error 2
| WARNING: /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/temp/do_compile/run.do_compile.28428:1 exit 1 from
|   exit 1
| ERROR: oe_runmake failed
| ERROR: Function failed: do_compile (log file is located at /home/demo/WindRiverWRL8/wsovp/tiny_prj/bitbake_build/tmp/work/corei7-64-wrs-linux/util-linux/2.26.2-r0/temp/do_compile/log.do_compile.28428)
ERROR: Task 514 (/home/demo/WindRiverWRL8/wsovp/tiny_prj/layers/oe-core/meta/recipes-core/util-linux/util-linux_2.26.2.bb, do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 1397 tasks of which 78 didn't need to be rerun and 1 failed.
NOTE: Build completion summary:
NOTE:   do_populate_sysroot: 0% sstate reuse (0 setscene, 123 scratch)
NOTE:   do_package_qa: 0% sstate reuse (0 setscene, 10 scratch)
NOTE:   do_package: 0% sstate reuse (0 setscene, 31 scratch)
NOTE:   do_packagedata: 0% sstate reuse (0 setscene, 28 scratch)
NOTE:   do_package_write_rpm: 0% sstate reuse (0 setscene, 15 scratch)
NOTE:   do_populate_lic: 39% sstate reuse (65 setscene, 98 scratch)
Waiting for 0 running tasks to finish:

Summary: 1 task failed:
  /home/demo/WindRiverWRL8/wsovp/tiny_prj/layers/oe-core/meta/recipes-core/util-linux/util-linux_2.26.2.bb, do_compile
Summary: There were 2 WARNING messages shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
Makefile:120: recipe for target 'export-dist' failed
make: *** [export-dist] Error 1
demo@gamer-linux:~/WindRiverWRL8/wsovp/tiny_prj$

Other Downloads


Live chat
Online