[poky] [PATCH 1/1] Make poky-qemu and related scripts work with arbitrary SDK locations
Scott Garman
scott.a.garman at intel.com
Thu Dec 9 13:33:16 PST 2010
On 12/09/2010 07:00 AM, Richard Purdie wrote:
> On Tue, 2010-12-07 at 20:59 -0800, Scott Garman wrote:
>> diff --git a/scripts/poky-find-native-sysroot b/scripts/poky-find-native-sysroot
>> index d8002f9..2262294 100755
>> --- a/scripts/poky-find-native-sysroot
>> +++ b/scripts/poky-find-native-sysroot
>> diff --git a/scripts/poky-qemu b/scripts/poky-qemu
>> index bc312e0..67af439 100755
>> --- a/scripts/poky-qemu
>> +++ b/scripts/poky-qemu
>> @@ -31,9 +31,9 @@ usage() {
>> echo " serial - enables a serial console on /dev/ttyS0"
>> echo ""
>> echo "Examples:"
>> - echo " $0 qemuarm"
>> - echo " $0 qemux86-64 poky-image-sato ext3"
>> - echo " $0 path/to/bzImage-qemux86.bin path/to/nfsrootdir/ serial"
>> + echo " $MYNAME qemuarm"
>> + echo " $MYNAME qemux86-64 poky-image-sato ext3"
>> + echo " $MYNAME path/to/bzImage-qemux86.bin path/to/nfsrootdir/ serial"
>> exit 1
>> }
>>
>> @@ -213,23 +213,29 @@ setup_tmpdir() {
>> echo "before running this script">&2;
>> exit 1; }
>>
>> - # We have bitbake in PATH, get TMPDIR and BUILD_SYS
>> - # from the environment
>> + # We have bitbake in PATH, get TMPDIR from bitbake
>> TMPDIR=`bitbake -e | grep TMPDIR=\" | cut -d '=' -f2 | cut -d '"' -f2`
>> - BUILD_SYS=`bitbake -e | grep BUILD_SYS=\" | cut -d '=' -f2 | cut -d '"' -f2`
>> else
>> - BUILD_ARCH=`uname -m`
>> - BUILD_OS=`uname | tr '[A-Z]' '[a-z]'`
>> - BUILD_SYS="$BUILD_ARCH-$BUILD_OS"
>> TMPDIR=$BUILDDIR/tmp
>> fi
>> - if [ -z "$POKY_NATIVE_SYSROOT" ]; then
>> - POKY_NATIVE_SYSROOT=$TMPDIR/sysroots/$BUILD_SYS
>> - fi
>> - CROSSPATH=$POKY_NATIVE_SYSROOT/usr/bin
>> fi
>> }
>
> Hmm, you remove CROSSPATH yet still reference it later. I think the code
> has become confused. I'm going to merge the patch as it improves the
> situation compared to how it is at the moment. I'll give some background
> though:
>
> There are three things we really want to reference in PATH:
>
> a) The "native" or "nativesdk" tools
> b) The "cross" tools, i.e. TARGET_PREFIX-gcc
> c) The "cross" tools without the prefix, e.g. "gcc", replacing the
> usual gcc you'd find in PATH. This last part is to allow distcc in a
> image to use the compiler outside the emulation.
>
> The distcc thing did used to work but I doubt it does at the moment as I
> think this has just been reduced to the native case accidentally.
>
> The paths in the sysroot corresponding to these are:
>
> /opt/poky/sysroots/HOST-pokysdk-linux/usr/bin
> /opt/poky/sysroots/HOST-pokysdk-linux/usr/bin/TARGET-poky-linux
> /opt/poky/sysroots/HOST-pokysdk-linux/usr/libexec/TARGET-poky-linux/gcc/TARGET-poky-linux/GCCVERSION/
>
> and there are similar paths in a Poky build directory.
>
> I hope that helps clear things up a bit.
Thanks Richard, that does clarify things. I will file a bug for this and
address it soon.
Scott
--
Scott Garman
Embedded Linux Distro Engineer - Yocto Project
More information about the poky
mailing list