Bug 2593

Summary: gcc 4.7 - beecrypt causes core-image-minimal failure - do_compile fail
Product: [Build System, Metadata & Runtime] Meta-yocto Reporter: Laurentiu Serban <laurentiu.serban>
Component: meta-yoctoAssignee: Saul Wold <sgw>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: Medium CC: poky.bs.watcher, poky.watcher, sgw, yilongx.y.sun
Version: unspecified   
Target Milestone: 1.3 M1   
Hardware: x86   
OS: x86_64   
Whiteboard: fixed
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---
Attachments:
Description Flags
beecrypt do_compile fail log none

Description Laurentiu Serban 2012-06-13 09:02:06 UTC
Created attachment 579 [details]
beecrypt do_compile fail log

for the build configuration below:
on fedora 17

Build Configuration:
BB_VERSION        = "1.15.2"
TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "qemux86"
DISTRO            = "poky"
DISTRO_VERSION    = "1.2+snapshot-20120613"
TUNE_FEATURES     = "m32 i586"
TARGET_FPU        = ""
meta              
meta-yocto        = "master:5ed855d12cddf2de535c3f6d05d3dfe85d69d99d"

bitbake core-image-minimal returns:

make[4]: *** [Properties.lo] Error 1
make[4]: Leaving directory `/home/lserban/work/poky/build/tmp/work/x86_64-linux/beecrypt-native-4.2.1-r2/beecrypt-4.2.1/c++/util'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/lserban/work/poky/build/tmp/work/x86_64-linux/beecrypt-native-4.2.1-r2/beecrypt-4.2.1/c++/util'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/lserban/work/poky/build/tmp/work/x86_64-linux/beecrypt-native-4.2.1-r2/beecrypt-4.2.1/c++'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/lserban/work/poky/build/tmp/work/x86_64-linux/beecrypt-native-4.2.1-r2/beecrypt-4.2.1'
make: *** [all] Error 2
ERROR: oe_runmake failed
Comment 1 Laurentiu Serban 2012-06-13 10:11:37 UTC
This issue occurs on Fedora 17.
On Ubuntu 11.10 this issue cannot be reproduced.
Comment 2 Richard Purdie 2012-06-13 11:48:47 UTC
The key part of the error log:
g++ -DHAVE_CONFIG_H -I. -I../.. -I../../include -isystem/home/lserban/work/poky/build/tmp/sysroots/x86_64-linux/usr/include -isystem/home/lserban/work/poky/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe -Wa,--noexecstack -c Properties.cxx  -fPIC -DPIC -o .libs/Properties.o
In file included from ../../include/beecrypt/c++/util/Hashtable.h:42:0,
                 from ../../include/beecrypt/c++/util/Properties.h:36,
                 from Properties.cxx:25:
../../include/beecrypt/c++/util/AbstractSet.h: In instantiation of 'bool beecrypt::util::AbstractSet<E>::equals(const beecrypt::lang::Object*) const [with E = beecrypt::util::Map<beecrypt::lang::Object, beecrypt::lang::Object>::Entry]':
Properties.cxx:228:1:   required from here
../../include/beecrypt/c++/util/AbstractSet.h:59:27: error: 'containsAll' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
../../include/beecrypt/c++/util/AbstractSet.h:59:27: note: declarations in dependent base 'beecrypt::util::AbstractCollection<beecrypt::util::Map<beecrypt::lang::Object, beecrypt::lang::Object>::Entry>' are not found by unqualified lookup
../../include/beecrypt/c++/util/AbstractSet.h:59:27: note: use 'this->containsAll' instead
../../include/beecrypt/c++/util/AbstractSet.h: In instantiation of 'bool beecrypt::util::AbstractSet<E>::equals(const beecrypt::lang::Object*) const [with E = beecrypt::lang::Object]':
Properties.cxx:228:1:   required from here
../../include/beecrypt/c++/util/AbstractSet.h:59:27: error: 'containsAll' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
../../include/beecrypt/c++/util/AbstractSet.h:59:27: note: declarations in dependent base 'beecrypt::util::AbstractCollection<beecrypt::lang::Object>' are not found by unqualified lookup
../../include/beecrypt/c++/util/AbstractSet.h:59:27: note: use 'this->containsAll' instead

I suspect this is a gcc 4.7 issue on the host distro (its a -native recipe) and there is a hint about the solution above "use 'this->containsAll'"
Comment 3 Saul Wold 2012-06-14 00:30:12 UTC
Richard is correct, I have a patch in the works for that.  Found the problem also!
Comment 5 Laurentiu Serban 2012-06-18 09:11:35 UTC
Verified
Comment 6 Saul Wold 2012-06-20 16:06:02 UTC
*** Bug 2631 has been marked as a duplicate of this bug. ***