* [meta-mingw] eglibc-initial package getting in the way
@ 2013-08-09 16:16 Francois Retief
2013-08-12 18:51 ` Richard Purdie
0 siblings, 1 reply; 3+ messages in thread
From: Francois Retief @ 2013-08-09 16:16 UTC (permalink / raw)
To: openembedded-core
[-- Attachment #1: Type: text/plain, Size: 5325 bytes --]
Hallo,
I am working on a MinGW SDK layer for OpenEmbedded. At this point, I got
to the
point where the "gcc-crosssdk" package builds successfully.
My next target is to build the "nativesdk-libgcc" package. But the
"nativesdk-eglibc-initial package" is getting in the way. As one can see
from
the log output below, eglibc, it complains that the mingw32 environment is
not
supported.
So I switched TCLIBC in local.conf to "uclibc" in the hope that it would do
better,
but same error message. Same package gets built.
Also there is a BitBake warning about multiple package that provides the
same libc-for-gcc package. But when I run gcc-crosssdk, there is no such
clash.
Thus my question is, where does the eglibc package get included in the
dependency
tree? I worked through the package-depends.dot file to try and find what is
referencing this package but with no luck.
Cheers
Francois
ps. My MinGW work is captured in this git repository:
https://github.com/fgretief/meta-mingw.git
$ SDKMACHINE=x86_64-mingw32 bitbake nativesdk-libgcc -c compile
Build Configuration:
BB_VERSION = "1.19.1"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "Fedora-19"
TARGET_SYS = "arm-oe-linux-uclibceabi"
MACHINE = "qemuarm"
DISTRO_VERSION = "oe-core.0"
TUNE_FEATURES = "armv5 thumb dsp"
TARGET_FPU = "soft"
meta-mingw = "master:018333e3c2fd77bdf0a21c042cbc6b28c6eeb42f"
meta = "master:f192c444c2d88c49738bea4ff4c3af0cc72916de"
Other variables: (from -e output)
TCLIBC = "uclibc"
SDK_PREFIX = "x86_64-oesdk-mingw32-"
TARGET_PREFIX = "x86_64-oesdk-mingw32-"
NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
ERROR: Multiple .bb files are due to be built which each provide
virtual/nativesdk-x86_64-oesdk-mingw32-libc-for-gcc
(virtual:nativesdk:/opt/core-oe/sources/openembedded-core/meta/recipes-core/eglibc/
eglibc_2.18.bb
virtual:nativesdk:/opt/core-oe/sources/meta-mingw/recipes-devtools/mingw-w64/
mingw-w64-runtime_2.0.8.bb).
This usually means one provides something the other doesn't and should.
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: Function failed: do_configure (log file is located at
/opt/core-oe/tmp-uclibc/work/x86_64-nativesdk-oesdk-mingw32/nativesdk-eglibc-initial/2.18-r0/temp/log.do_configure.23538)
ERROR: Logfile of failure stored in:
/opt/core-oe/tmp-uclibc/work/x86_64-nativesdk-oesdk-mingw32/nativesdk-eglibc-initial/2.18-r0/temp/log.do_configure.23538
Log data follows:
| DEBUG: Executing python function sysroot_cleansstate
| DEBUG: Python function sysroot_cleansstate finished
| DEBUG: SITE files ['endian-little', 'common-mingw', 'bit-64',
'x86_64-mingw32', 'common']
| DEBUG: Executing shell function autotools_preconfigure
| DEBUG: Shell function autotools_preconfigure finished
| DEBUG: Executing shell function do_configure
| aclocal.m4:5: error: Exactly version 2.68 of Autoconf is required but you
have 2.69
| aclocal.m4:5: the top level
| autom4te: m4 failed with exit status: 63
| checking build system type... x86_64-pc-linux-gnu
| checking host system type... x86_64-oesdk-mingw32
| checking for x86_64-oesdk-mingw32-gcc... x86_64-oesdk-mingw32-gcc
--sysroot=/opt/core-oe/tmp-uclibc/sysroots/x86_64-nativesdk-oesdk-mingw32
| checking for suffix of object files... o
| checking whether we are using the GNU C compiler... yes
| checking whether x86_64-oesdk-mingw32-gcc
--sysroot=/opt/core-oe/tmp-uclibc/sysroots/x86_64-nativesdk-oesdk-mingw32
accepts -g... yes
| checking for gcc... gcc
| checking whether we are using the GNU C++ compiler... yes
| checking whether x86_64-oesdk-mingw32-g++
--sysroot=/opt/core-oe/tmp-uclibc/sysroots/x86_64-nativesdk-oesdk-mingw32
accepts -g... yes
| checking for x86_64-oesdk-mingw32-readelf... x86_64-oesdk-mingw32-readelf
| checking for sysdeps preconfigure fragments... x86_64 checking whether
x86_64-oesdk-mingw32-gcc
--sysroot=/opt/core-oe/tmp-uclibc/sysroots/x86_64-nativesdk-oesdk-mingw32
compiles in -mx32 mode by default... no
|
| configure: running configure fragment for add-on libidn
| configure: running configure fragment for add-on nptl
| checking add-on ports for preconfigure fragments... aarch64 alpha am33
arm hppa ia64 m68k microblaze mips powerpc tile
| checking for assembler and linker STT_GNU_IFUNC support... no
| checking whether .text pseudo-op must be used... yes
|
| checking sysdep dirs... configure: error: Operating system mingw32 is not
supported.
|
| ERROR: Function failed: do_configure (log file is located at
/opt/core-oe/tmp-uclibc/work/x86_64-nativesdk-oesdk-mingw32/nativesdk-eglibc-initial/2.18-r0/temp/log.do_configure.23538)
ERROR: Task 235
(virtual:nativesdk:/opt/core-oe/sources/openembedded-core/meta/recipes-core/eglibc/
eglibc-initial_2.18.bb, do_configure) failed with exit code '1'
NOTE: Tasks Summary: Attempted 602 tasks of which 595 didn't need to be
rerun and 1 failed.
Waiting for 0 running tasks to finish:
Summary: 1 task failed:
virtual:nativesdk:/opt/core-oe/sources/openembedded-core/meta/recipes-core/eglibc/
eglibc-initial_2.18.bb, do_configure
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
[-- Attachment #2: Type: text/html, Size: 6072 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [meta-mingw] eglibc-initial package getting in the way
2013-08-09 16:16 [meta-mingw] eglibc-initial package getting in the way Francois Retief
@ 2013-08-12 18:51 ` Richard Purdie
2013-08-12 22:03 ` Richard Purdie
0 siblings, 1 reply; 3+ messages in thread
From: Richard Purdie @ 2013-08-12 18:51 UTC (permalink / raw)
To: Francois Retief; +Cc: openembedded-core
On Fri, 2013-08-09 at 18:16 +0200, Francois Retief wrote:
> I am working on a MinGW SDK layer for OpenEmbedded. At this point, I
> got to the
> point where the "gcc-crosssdk" package builds successfully.
>
> My next target is to build the "nativesdk-libgcc" package. But the
> "nativesdk-eglibc-initial package" is getting in the way. As one can
> see from
> the log output below, eglibc, it complains that the mingw32
> environment is not
> supported.
>
> So I switched TCLIBC in local.conf to "uclibc" in the hope that it
> would do better,
> but same error message. Same package gets built.
>
> Also there is a BitBake warning about multiple package that provides
> the same libc-for-gcc package. But when I run gcc-crosssdk, there is
> no such clash.
>
> Thus my question is, where does the eglibc package get included in the
> dependency
> tree? I worked through the package-depends.dot file to try and find
> what is
> referencing this package but with no luck.
I had a look at your repository and also tried building with it, looks
good so far. TCLIBC is the wrong thing to play with, the issue is that
you need to totally replace nativesdk-libc* with the mingw-w64-runtime
package. This means it needs to have all the right PROVIDES to do this.
The warning when you run "bitbake meta-toolchain":
ERROR: Multiple .bb files are due to be built which each provide
virtual/nativesdk-x86_64-pokysdk-mingw32-libc-for-gcc
(virtual:nativesdk:/media/build1/poky/meta-mingw/recipes-devtools/mingw-w64/mingw-w64-runtime_2.0.8.bb virtual:nativesdk:/media/build1/poky/meta/recipes-core/eglibc/eglibc_2.18.bb).
This usually means one provides something the other doesn't and should.
ERROR: Multiple .bb files are due to be built which each provide
virtual/nativesdk-libc
(virtual:nativesdk:/media/build1/poky/meta-mingw/recipes-devtools/mingw-w64/mingw-w64-runtime_2.0.8.bb virtual:nativesdk:/media/build1/poky/meta/recipes-core/eglibc/eglibc_2.18.bb).
This usually means one provides something the other doesn't and should.
clearly shows its trying to build both and is rather confused. I'm going
to poke at this a little further and see if I can give some better
pointers as to how to fix this...
Cheers,
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [meta-mingw] eglibc-initial package getting in the way
2013-08-12 18:51 ` Richard Purdie
@ 2013-08-12 22:03 ` Richard Purdie
0 siblings, 0 replies; 3+ messages in thread
From: Richard Purdie @ 2013-08-12 22:03 UTC (permalink / raw)
To: Francois Retief; +Cc: openembedded-core
On Mon, 2013-08-12 at 19:51 +0100, Richard Purdie wrote:
> On Fri, 2013-08-09 at 18:16 +0200, Francois Retief wrote:
> > I am working on a MinGW SDK layer for OpenEmbedded. At this point, I
> > got to the
> > point where the "gcc-crosssdk" package builds successfully.
> >
> > My next target is to build the "nativesdk-libgcc" package. But the
> > "nativesdk-eglibc-initial package" is getting in the way. As one can
> > see from
> > the log output below, eglibc, it complains that the mingw32
> > environment is not
> > supported.
> >
> > So I switched TCLIBC in local.conf to "uclibc" in the hope that it
> > would do better,
> > but same error message. Same package gets built.
> >
> > Also there is a BitBake warning about multiple package that provides
> > the same libc-for-gcc package. But when I run gcc-crosssdk, there is
> > no such clash.
> >
> > Thus my question is, where does the eglibc package get included in the
> > dependency
> > tree? I worked through the package-depends.dot file to try and find
> > what is
> > referencing this package but with no luck.
I played a bit with this and shared some tweaks as:
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=rpurdie/meta-mingw
With those applied, "bitbake gcc-cross-canadian-i586
binutils-cross-canadian-i586 -k" results in:
Summary: 6 tasks failed:
virtual:nativesdk:/media/build1/poky/meta/recipes-core/zlib/zlib_1.2.8.bb, do_compile
virtual:nativesdk:/media/build1/poky/meta/recipes-devtools/gcc/libgcc_4.8.bb, do_package
[easy to fix, not blocking the build]
/media/build1/poky/meta/recipes-devtools/libtool/nativesdk-libtool_2.4.2.bb, do_compile
virtual:nativesdk:/media/build1/poky/meta/recipes-extended/bzip2/bzip2_1.0.6.bb, do_compile
virtual:nativesdk:/media/build1/poky/meta/recipes-support/mpfr/mpfr_3.1.2.bb, do_configure
[shared gmp lib is bust, --disable-shared might make mpfr build]
virtual:nativesdk:/media/build1/poky/meta/recipes-core/gettext/gettext_0.18.2.bb, do_compile
which is progress I guess. I've commented on a couple of the failures,
I've not looked at the others. zlib is probably the one to get building
next.
The root cause was the libintl/libiconv providers being problematic.
I've hacked those for now to make the build work, we can worry about
sorting proper providers later should that be an issue.
Cheers,
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-08-12 22:04 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-09 16:16 [meta-mingw] eglibc-initial package getting in the way Francois Retief
2013-08-12 18:51 ` Richard Purdie
2013-08-12 22:03 ` Richard Purdie
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox