[oe] libarchive: task compile fails with `error: static declaration of 'wcscpy' follows non-static declaration`

Khem Raj raj.khem at gmail.com
Thu Mar 24 04:22:21 UTC 2011


On (23/03/11 12:04), Paul Menzel wrote:
> Dear OE folks
> 
> 
> trying to test the latest changes in `libarchive_2.8.4.bb` I hit the
> following error.
> 
> 	arm-oe-linux-gnueabi-libtool: compile:  arm-oe-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -mthumb-interwork -mno-thumb --sysroot=/oe/build-minimal-eglibc/minimal-dev/sysroots/armv7a-oe-linux-gnueabi -DHAVE_CONFIG_H -I. -I/oe/build-minimal-eglibc/minimal-dev/sysroots/i686-linux/usr/include/libxml2 -fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os -g -MT libarchive/archive_entry.lo -MD -MP -MF libarchive/.deps/archive_entry.Tpo -c libarchive/archive_entry.c  -fPIC -DPIC -o libarchive/.libs/archive_entry.o
> 	libarchive/archive_entry.c:136:18: error: static declaration of 'wcscpy' follows non-static declaration
> 	/oe/build-minimal-eglibc/minimal-dev/sysroots/armv7a-oe-linux-gnueabi/usr/include/wchar.h:144:17: note: previous declaration of 'wcscpy' was here
> 	libarchive/archive_entry.c:145:15: error: static declaration of 'wcslen' follows non-static declaration
> 	/oe/build-minimal-eglibc/minimal-dev/sysroots/armv7a-oe-linux-gnueabi/usr/include/wchar.h:284:15: note: previous declaration of 'wcslen' was here
> 	arm-oe-linux-gnueabi-libtool: compile:  arm-oe-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -mthumb-interwork -mno-thumb --sysroot=/oe/build-minimal-eglibc/minimal-dev/sysroots/armv7a-oe-linux-gnueabi -DHAVE_CONFIG_H -I. -I/oe/build-minimal-eglibc/minimal-dev/sysroots/i686-linux/usr/include/libxml2 -fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os -g -MT libarchive/archive_entry_stat.lo -MD -MP -MF libarchive/.deps/archive_entry_stat.Tpo -c libarchive/archive_entry_stat.c -o libarchive/archive_entry_stat.o >/dev/null 2>&1
> 	arm-oe-linux-gnueabi-libtool: compile:  arm-oe-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -mthumb-interwork -mno-thumb --sysroot=/oe/build-minimal-eglibc/minimal-dev/sysroots/armv7a-oe-linux-gnueabi -DHAVE_CONFIG_H -I. -I/oe/build-minimal-eglibc/minimal-dev/sysroots/i686-linux/usr/include/libxml2 -fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os -g -MT libarchive/archive_entry_strmode.lo -MD -MP -MF libarchive/.deps/archive_entry_strmode.Tpo -c libarchive/archive_entry_strmode.c -o libarchive/archive_entry_strmode.o >/dev/null 2>&1
> 	arm-oe-linux-gnueabi-libtool: compile:  arm-oe-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -mthumb-interwork -mno-thumb --sysroot=/oe/build-minimal-eglibc/minimal-dev/sysroots/armv7a-oe-linux-gnueabi -DHAVE_CONFIG_H -I. -I/oe/build-minimal-eglibc/minimal-dev/sysroots/i686-linux/usr/include/libxml2 -fexpensive-optimizations -fomit-frame-pointer -frename-registers -Os -g -MT libarchive/archive_entry_xattr.lo -MD -MP -MF libarchive/.deps/archive_entry_xattr.Tpo -c libarchive/archive_entry_xattr.c -o libarchive/archive_entry_xattr.o >/dev/null 2>&1
> 	make[1]: *** [libarchive/archive_entry.lo] Error 1
> 	make[1]: *** Waiting for unfinished jobs....
> 	make[1]: Leaving directory `/oe/build-minimal-eglibc/minimal-dev/work/armv7a-oe-linux-gnueabi/libarchive-2.8.4-r0/libarchive-2.8.4'
> 	make: *** [all] Error 2
> 	+ die 'oe_runmake failed'
> 	+ oefatal 'oe_runmake failed'
> 	+ echo FATAL: 'oe_runmake failed'
> 	FATAL: oe_runmake failed
> 	+ exit 1
> 
> The following configuration is used.
> 
> 	Build Configuration:
> 	BB_VERSION        = "1.12.0"
> 	METADATA_BRANCH   = "master"
> 	METADATA_REVISION = "79d295c"
> 	TARGET_ARCH       = "arm"
> 	TARGET_OS         = "linux-gnueabi"
> 	MACHINE           = "beagleboard"
> 	DISTRO            = "minimal"
> 	DISTRO_VERSION    = "dev-snapshot-20110323"
> 	TARGET_FPU        = "soft"
> 

Well it works ok for me on both uclibc/eglibc

Build Configuration:
BB_VERSION        = "1.13.0"
METADATA_BRANCH   = "master"
METADATA_REVISION = "3e7790b"
TARGET_ARCH       = "arm"
TARGET_OS         = "linux-gnueabi"
MACHINE           = "efikamx"
DISTRO            = "minimal"
DISTRO_VERSION    = "dev-snapshot-20110324"
TARGET_FPU        = "soft"

and as Phil pointed out somehow your test for wscpy is failing
I have 


checking for wcrtomb... yes
checking for wcscmp... yes
checking for wcscpy... yes
checking for wcslen... yes
checking for wctomb... yes
checking for wmemcmp... yes
checking for wmemcpy... yes

in log.do_configure

as well as in build/cmake/config.h.in

/* Define to 1 if you have the `wcscpy' function. */
#cmakedefine HAVE_WCSCPY 1


-Khem

> I will test a build using `angstrom-2010.x` next, but will not have time
> to track down the fix.
> 
> 
> Thanks,
> 
> Paul



> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel


-- 
-Khem




More information about the Openembedded-devel mailing list