[Openembedded-users] HelloWorld exe for x86 and celinux-test

Bjørn Forsman bjorn.forsman at gmail.com
Fri May 14 14:16:20 UTC 2010


On 14 May 2010 14:25, nikunj badjatya <nikunjbadjatya at gmail.com> wrote:
> Hi All,
> I am a newbie to the world of OE and Bitbake.
> I want to generate a helloworld executable with MACHINE=x86 and
> DISTRO=celinux-test as parameters.
>
> ( although I am not sure about which distro to use..! please correct me if
> above parameters are wrong. )

I cannot comment on which distro to use. I have only used Angstrom on
an ARM device.

> All environment setup has been done acc to
> http://docs.openembedded.org/usermanual/usermanual.html#gettingoe_configuring_oe
>
> I am using CentOS 5.4 kernel 2.6.18
> tools and utilities required are also installed. ( texi2html, chrpath,
> texinfo etc. )
> python version in use is 2.6
>
>
> When I run the command :
> $bitbake /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb
>
> it says:
> NOTE: Handling BitBake files: / (6783/8369) [81 %]NOTE: <type
> 'exceptions.TypeError'>:list indices must be integers, not NoneType while
> evaluating:
> http://projects.linuxtogo.org/frs/download.php/14/prismstumbler-0.7.4pre1.tar.gz
> file://gpsapi.patch;patch=1       ${@['',
> 'file://wireless.patch;patch=1'][bb.data.getVar('PREFERRED_VERSION_linux-libc-headers',
> d, 1) and bb.data.getVar('PREFERRED_VERSION_linux-libc-headers', d,
> 1).split('.')[2] < '30']}
> file://fix-includes.patch;patch=1;pnum=0
> file://libgps-check.patch;patch=1
> ERROR: Error in executing:
> /home/nikunj/oe//openembedded/recipes/prismstumbler/prismstumbler_0.7.3+0.7.4pre1.bb
> ERROR: Exception:<type 'exceptions.TypeError'> Message:list indices must be
> integers, not NoneType
> ERROR: Printing the environment of the function
> ERROR:  0001:def __anonfunc():
> ERROR:  0002:
> __anon_183__home_nikunj_oe__openembedded_classes_staging_bbclass(d)
> ERROR:  0003:    __anon_453_classes_base_bbclass(d)
> ERROR:  0004:
> __anon_148__home_nikunj_oe__openembedded_classes_package_bbclass(d)
> ERROR:  0005:    __anon_318_classes_package_ipk_bbclass(d)
> ERROR: list indices must be integers, not NoneType while parsing
> /home/nikunj/oe//openembedded/recipes/prismstumbler/prismstumbler_0.7.3+0.7.4pre1.bb
> NOTE: Handling BitBake files: | (8369/8369) [100 %]
> NOTE: Parsing finished. 0 cached, 8076 parsed, 292 skipped, 0 masked.
> ERROR: Parsing errors found, exiting...

AFAIK, using bitbake with absolute paths to recipes is a bad thing.
Try 'bitbake helloword-image' instead. Note that it builds an *image*,
not just a helloworld executable.

> => To avoid this long parsing use "-b" option with the bitbake.
>
>
> When i ran with " -b " option.
> $ bitbake -b
> /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb
>
> it says:
> NOTE: Preparing runqueue
> NOTE: Executing runqueue
> NOTE: Running task 1 of 11 (ID: 5,
> /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb,
> do_setscene)
> NOTE: Running task 2 of 11 (ID: 4,
> /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb,
> do_fetch)
> NOTE: Running task 3 of 11 (ID: 0,
> /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb,
> do_unpack)
> NOTE: Unpacking ../openembedded/recipes/helloworld/helloworld_1.0.0.bb to
> tmp/work/armv5te-linux/helloworld-1.0.0-r1/
> NOTE: Running task 4 of 11 (ID: 1,
> /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb,
> do_patch)
> NOTE: Running task 5 of 11 (ID: 6,
> /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb,
> do_configure)
> NOTE: Running task 6 of 11 (ID: 7,
> /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb,
> do_compile)
> ERROR: function do_compile failed
> ERROR: log data follows
> (/home/nikunj/oe/build/tmp/work/armv5te-linux/helloworld-1.0.0-r1/temp/log.do_compile.12888)
> |
> /home/nikunj/oe/build/tmp/work/armv5te-linux/helloworld-1.0.0-r1/temp/run.do_compile.12888:
> line 242: arm-linux-gcc: command not found
> NOTE: Task failed:
> /home/nikunj/oe/build/tmp/work/armv5te-linux/helloworld-1.0.0-r1/temp/log.do_compile.12888
> ERROR: TaskFailed event exception, aborting
> ERROR: Build of
> /home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb
> do_compile failed
> ERROR: Task 7
> (/home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb,
> do_compile) failed
> NOTE: Tasks Summary: Attempted 5 tasks of which 0 didn't need to be rerun
> and 1 failed.
> ERROR: '/home/nikunj/oe/openembedded/recipes/helloworld/helloworld_1.0.0.bb'
> failed

When you bypass building recipe dependencies with the -b flag, things
may go bad.
As your log shows, the toolchain has not even been built! You can see
that from the line:

> /home/nikunj/oe/build/tmp/work/armv5te-linux/helloworld-1.0.0-r1/temp/run.do_compile.12888:
> line 242: arm-linux-gcc: command not found

To sum up: try 'bitbake helloworld-image'.

Best regards,
Bjørn Forsman




More information about the Openembedded-users mailing list