From: Ulf Samuelsson <ulf.samuelsson@atmel.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: gnome-mplayer fails to build due to no libstdc++.so.6 instaging (available in cross)
Date: Tue, 16 Mar 2010 21:26:23 +0100 [thread overview]
Message-ID: <4B9FE96F.1030604@atmel.com> (raw)
In-Reply-To: <4B9F2055.4000805@atmel.com>
Ulf Samuelsson skrev:
> Paul Menzel skrev:
>> Am Montag, den 15.03.2010, 23:00 +0100 schrieb Ulf Samuelsson:
>>
>> […]
>>
>>> If I move the "libstdc++.so[.6[.0.10]]" files to the staging directory
>>> the build will complete, and gnome-mplayer runs on the target.
>>>
>>> I tried doing
>>> DEPENDS = "libstdc++"
>>> in "libmusicbrainz.inc"
>>> but get a "no buildable provider" error.
>>>
>>> I tried
>>> RDEPENDS = "libstdc++"
>>> and then libmusicbrainz completes, but again gnome-mplayer exists with
>>> the error above.
>>>
>>> How ensure that staging gets populated with libstdc++ if libmusicbrainz
>>> is used?
>> You cannot use package names in `DEPENDS`. You have to use the name of
>> the recipe or the recipes has to have `PROVIDES` set. I ask the same on
>> IRC today.
>>
>> So you have to find the name of the recipe creating `libstdc++`.
>>
>>
>> Thanks,
>>
>> Paul
>>
>
> If I grep for libstdc++ in recipes, then it looks like the provider
> is "meta/external-toolchain.bb"
>
> I don't want to add the complete cross-compiler.
>
> Will try adding "libstd++" to the image I am building.
> The line "images/fso-image-nox.bb: libstdc++ \" below
> and some googling gives me hope!
Adding
IMAGE_INSTALL += " libstdc++ "
to a very basic image gives me
libstdc++.so.6 and libstdc++.so.6.0.10 in /usr/lib
If I add
IMAGE_INSTALL += " libstdc++ "
to my main image and the build gnome-mplayer
then gnome-mplayer fails during compile.
This little recipe will do what I want, but is there a better way?
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
PR = "r1"
LIBSTDCPLUSPLUS_TARGET = ${STAGING_DIR_TARGET}/lib
do_install () {
if ! [ -e ${LIBSTDCPLUSPLUS_TARGET}/libstdc++.so ] ; then
cp ${CROSS_DIR}/${TARGET_SYS}/lib/libstdc++.so.6.*
${LIBSTDCPLUSPLUS_TARGET}
cd ${LIBSTDCPLUSPLUS_TARGET}
file=`ls libstdc++.so.6.*`
ln -s $file libstdc++.so.6
ln -s $file libstdc++.so
fi
}
----------------------------------------------------------------------------
>
>
>
>
> gcc/gcc-configure-canadian-sdk.inc: (cd ${S}/libstdc++-v3 && autoreconf)
> gcc/gcc-configure-common.inc: --enable-libstdcxx-pch \
> gcc/gcc-cross_csl-arm-2008q3.bb: sed -i -e
> 's:gcc_no_link=yes:gcc_no_link=no:' ${S}/libstdc++-v3/configure
> gcc/gcc-cross_csl-arm-2008q1.bb: sed -i -e
> 's:gcc_no_link=yes:gcc_no_link=no:' ${S}/libstdc++-v3/configure
> gcc/gcc-4.1.2.inc: ln -sf ${S}/libstdc++-v3/config/os/uclibc/
> ${S}/libstdc++-v3/config/os/uclibc-linux
> gcc/gcc-configure-cross.inc: sed -i
> "s|dependency_libs\s*=\s*.*|dependency_libs='-L${CROSS_DIR}/${TARGET_SYS}/$d
> ${LIBGCCS_VAR} -lc
> -lm '|" ${CROSS_DIR}/${TARGET_SYS}/$d/libstdc++.la || true
> gcc/mingw-gcc-build.inc: sed -i -e "s|installed=yes|installed=no|" -e
> "s|dependency_libs\s*=\s*.*|dependency_libs='-L${STAGING_DIR_HOST
> }${layout_libdir} ${LIBGCCS_VAR} -lc -lm '|"
> ${STAGING_DIR_HOST}${layout_libdir}/libstdc++.la || true
> gcc/gcc-cross_csl-arm-2007q3.bb: sed -i -e
> 's:gcc_no_link=yes:gcc_no_link=no:' ${S}/libstdc++-v3/configure
> gcc/gcc-package-sdk.inc: ${TARGET_PREFIX}strip
> ${D}${prefix}/${TARGET_SYS}/lib/libstdc++.so.*
> gcc/gcc-package-cross.inc:PACKAGES = "libgcc libssp libstdc++ libg2c
> libgfortran"
> gcc/gcc-package-cross.inc:FILES_libstdc++ =
> "${target_libdir}/libstdc++.so.*"
> gcc/gcc-package-cross.inc: # Move libstdc++ and libg2c into libdir
> (resetting our prefix to /usr
> gcc/gcc-package-cross.inc: if [ -f
> ${D}${prefix}/*/lib/nof/libstdc++.so ]; then
> gcc/gcc-package-cross.inc: mv -f
> ${D}${prefix}/*/lib/nof/libstdc++.so* ${D}${target_libdir} || true
> gcc/gcc-package-cross.inc: mv -f
> ${D}${prefix}/*/${target_base_libdir}/libstdc++.so* ${D}${target_libdir}
> || true
> gcc/gcc-package-cross.inc: ${TARGET_PREFIX}strip
> ${D}${target_libdir}/libstdc++.so.* || true
> gcc/gcc-package-target.inc: libstdc++-dev \
> gcc/gcc-package-target.inc:FILES_libstdc++ = "${libdir}/libstdc++.so.*"
> gcc/gcc-package-target.inc:FILES_libstdc++-dev = "\
> gcc/gcc-package-target.inc: ${libdir}/libstdc++.so \
> gcc/gcc-package-target.inc: ${libdir}/libstdc++.la \
> gcc/gcc-package-target.inc: ${libdir}/libstdc++.a \
> images/fso-image-nox.bb: libstdc++ \
> mamona/gcc-noemu_4.1.2.bb: ln -sf
> ${S}/libstdc++-v3/config/os/uclibc/ ${S}/libstdc++-v3/config/os/uclibc-linux
> meta/slugos-native.bb: libstdc++-dev \
> meta/external-toolchain-generic.bb:RPROVIDES = "glibc glibc-utils
> libsegfault glibc-thread-db libgcc-dev libgcc libstdc++-dev libstdc++ ldd"
> meta/external-toolchain-csl.bb:INSANE_SKIP_libstdc++ = True
> meta/external-toolchain-csl.bb: libstdc++ \
> meta/external-toolchain-csl.bb: libstdc++-dev \
> meta/external-toolchain-csl.bb:FILES_libstdc++ = "${libdir}/libstdc++.so.*"
> meta/external-toolchain-csl.bb:FILES_libstdc++-dev = "\
> meta/external-toolchain-csl.bb: ${libdir}/libstdc++.so \
> meta/external-toolchain-csl.bb: ${libdir}/libstdc++.la \
> meta/external-toolchain-csl.bb: ${libdir}/libstdc++.a \
> meta/external-toolchain-csl.bb:PKGV_libstdc++ = ${CSL_VER_GCC}
> meta/external-toolchain-csl.bb:PKGV_libstdc++-dev = ${CSL_VER_GCC}
> meta/external-toolchain.bb:RPROVIDES = "glibc-utils libsegfault
> glibc-thread-db libgcc-dev libgcc libstdc++-dev libstdc++"
> sharprom-toolchain/sharprom-toolchain-native_1.0.bb:RPROVIDES =
> "glibc-utils libsegfault glibc-thread-db libgcc-dev libstdc++-dev libstdc++"
> tasks/task-sdk-bare.bb: libstdc++ \
> tasks/task-sdk-bare.bb: libstdc++-dev \
> tasks/task-openmoko-native-sdk.bb: libstdc++-dev \
> tasks/task-fso-toolchain-target.bb: libstdc++ \
> tasks/mamona-sdk.inc: libstdc++-dev \
> tasks/task-openmoko-toolchain-target.bb: libstdc++ \
> tasks/task-mamona-base.bb: libstdc++ \
>
>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
>
--
Best Regards
Ulf Samuelsson
next prev parent reply other threads:[~2010-03-16 20:29 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-15 22:00 gnome-mplayer fails to build due to no libstdc++.so.6 instaging (available in cross) Ulf Samuelsson
2010-03-15 22:19 ` Paul Menzel
2010-03-16 6:08 ` Ulf Samuelsson
2010-03-16 20:26 ` Ulf Samuelsson [this message]
2010-03-17 8:29 ` Koen Kooi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4B9FE96F.1030604@atmel.com \
--to=ulf.samuelsson@atmel.com \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.