| Submitter | Jason Wessel |
|---|---|
| Date | March 1, 2013, 2:26 p.m. |
| Message ID | <1362147965-42559-1-git-send-email-jason.wessel@windriver.com> |
| Download | mbox | patch |
| Permalink | /patch/45359/ |
| State | Accepted |
| Commit | 79c620016b0be4dacc9fcfbd4baab5ea6c66a440 |
| Headers | show |
Comments
Sent from my iPad On Mar 1, 2013, at 6:26 AM, Jason Wessel <jason.wessel@windriver.com> wrote: > When you using a qemuppc target and sstate you might end up with > the problem: > > qemu-system-ppc: error while loading shared libraries: > libfdt.so.1: cannot open shared object file: No such file or directory > > The way you can force this to happen assuming you are using sstate is > as follows: > > bitbake dtc-native > bitbake -c cleansstate qemu-native > bitbake qemu-native > bitbake -c clean dtc-native > > Now go start qemu and it will fail. The solution is to always build > the dtc libraries since they are used and needed by the qemuppc > simulator. I am carrying a local fix for same reason Acked-by: Khem Raj <raj.khem@gmail.com> > > Signed-off-by: Jason Wessel <jason.wessel@windriver.com> > --- > meta/recipes-devtools/qemu/qemu.inc | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc > index 6c44b31..eb60d43 100644 > --- a/meta/recipes-devtools/qemu/qemu.inc > +++ b/meta/recipes-devtools/qemu/qemu.inc > @@ -2,8 +2,8 @@ DESCRIPTION = "open source processor emulator" > HOMEPAGE = "http://qemu.org" > LICENSE = "GPLv2 & LGPLv2.1" > DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman" > -DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native" > -DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman" > +DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native dtc-native" > +DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman nativesdk-dtc" > RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl" > > require qemu-targets.inc > -- > 1.7.1 > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
On Fri, Mar 1, 2013 at 9:26 AM, Jason Wessel <jason.wessel@windriver.com> wrote: > When you using a qemuppc target and sstate you might end up with > the problem: > > diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc > index 6c44b31..eb60d43 100644 > --- a/meta/recipes-devtools/qemu/qemu.inc > +++ b/meta/recipes-devtools/qemu/qemu.inc > @@ -2,8 +2,8 @@ DESCRIPTION = "open source processor emulator" > HOMEPAGE = "http://qemu.org" > LICENSE = "GPLv2 & LGPLv2.1" > DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman" > -DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native" > -DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman" > +DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native dtc-native" > +DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman nativesdk-dtc" > RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl" Is there a way to instrument this in such a way that these depends are included only when the target machine is qemuppc? Some sort of @machine_depends or something?
On Fri, 2013-03-01 at 11:05 -0500, Trevor Woerner wrote: > On Fri, Mar 1, 2013 at 9:26 AM, Jason Wessel <jason.wessel@windriver.com> wrote: > > When you using a qemuppc target and sstate you might end up with > > the problem: > > > > diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc > > index 6c44b31..eb60d43 100644 > > --- a/meta/recipes-devtools/qemu/qemu.inc > > +++ b/meta/recipes-devtools/qemu/qemu.inc > > @@ -2,8 +2,8 @@ DESCRIPTION = "open source processor emulator" > > HOMEPAGE = "http://qemu.org" > > LICENSE = "GPLv2 & LGPLv2.1" > > DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman" > > -DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native" > > -DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman" > > +DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native dtc-native" > > +DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman nativesdk-dtc" > > RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl" > > Is there a way to instrument this in such a way that these depends are > included only when the target machine is qemuppc? Some sort of > @machine_depends or something? You could do that but it would mean you'd have a -native recipe rebuilding when changing machine. I'd not recommend it. Cheers, Richard
Patch
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc index 6c44b31..eb60d43 100644 --- a/meta/recipes-devtools/qemu/qemu.inc +++ b/meta/recipes-devtools/qemu/qemu.inc @@ -2,8 +2,8 @@ DESCRIPTION = "open source processor emulator" HOMEPAGE = "http://qemu.org" LICENSE = "GPLv2 & LGPLv2.1" DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman" -DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native" -DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman" +DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native dtc-native" +DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman nativesdk-dtc" RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl" require qemu-targets.inc
When you using a qemuppc target and sstate you might end up with the problem: qemu-system-ppc: error while loading shared libraries: libfdt.so.1: cannot open shared object file: No such file or directory The way you can force this to happen assuming you are using sstate is as follows: bitbake dtc-native bitbake -c cleansstate qemu-native bitbake qemu-native bitbake -c clean dtc-native Now go start qemu and it will fail. The solution is to always build the dtc libraries since they are used and needed by the qemuppc simulator. Signed-off-by: Jason Wessel <jason.wessel@windriver.com> --- meta/recipes-devtools/qemu/qemu.inc | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)