From AragoWiki

Revision as of 15:23, 15 October 2009 by Denix (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Q: Why do some image recipes require MACHINE definition?

For example

$ bitbake x11-image

results in this error

| ============================================================================
| Arago is a virtual machine for multiple platforms and it can't have a kernel
| Please specify MACHINE=... on the command line with the actual machine name
| for which to build the kernel, e.g. MACHINE=omap3evm bitbake virtual/kernel
| ============================================================================
  • A: The reason is because upstream images (e.g. x11-image and opie-image) depend on kernel modules.

This brings in the whole kernel in to the build. But in Arago the default machine is "arago", which is a unified OMAP/DaVinci virtual machine and has a protection against building an unknown kernel. Specific kernels are supposed to be built with proper machine specified through the MACHINE= variable. That also prevents kernel images from getting into /boot directory of the filesystem.

One way for you would be to build a machine-specific filesystem image by setting MACHINE= to something meaningful, like davinci-dvevm:

$ MACHINE=davinci-dvevm bitbake x11-image

Q: Is there a mailing list or IRC channel?

  • A: #arago IRC channel is now available on irc.freenode.net - you can find me (denix) there as well as on other relative channels, like #oe, #beagle and #gst_ti, and those channels usually populated with smart and helpful people.

Please feel free to subscribe to the arago-devel mailing list for all the development, usage, announcements and while the volume is low, any other general discussions:


Alternatively, you can send an email to the arago-devel-request@gforge.ti.com

Q: Build fails with "GNUmakefile: Too many levels of symbolic links"

The build fails with the following messages:

NOTE: Running task 28 of 69 (ID: 7, /OE/arago-oe-dev/recipes/coreutils/coreutils-native_7.2.bb, do_compile)
ERROR: function do_compile failed
ERROR: log data follows (/OE/arago-tmp/work/i686-linux/coreutils-native-7.2-r0/temp/log.do_compile.8646)
| NOTE: make
| make: GNUmakefile: Too many levels of symbolic links
| make: stat: GNUmakefile: Too many levels of symbolic links
| make: *** No rule to make target `GNUmakefile'.  Stop.
| FATAL: oe_runmake failed
NOTE: Task failed: /OE/arago-tmp/work/i686-linux/coreutils-native-7.2-r0/temp/log.do_compile.8646
ERROR: TaskFailed event exception, aborting
ERROR: Build of /OE/arago-oe-dev/recipes/coreutils/coreutils-native_7.2.bb do_compile failed
ERROR: Task 7 (/OE/arago-oe-dev/recipes/coreutils/coreutils-native_7.2.bb, do_compile) failed
NOTE: Tasks Summary: Attempted 27 tasks of which 0 didn't need to be rerun and 1 failed.
ERROR: '/OE/arago-oe-dev/recipes/coreutils/coreutils-native_7.2.bb' failed

If manually fixed in coreutils-native, it fails in some other package...

  • A: There are some problems with autotools not properly handling paths with symlinks. So, in the example above, make sure /OE/arago-tmp (and other paths, like arago, arago-oe-dev etc.) do not contain symlinks. If you need to use a different directory for arago builds, use OEBASE variable (and maybe SCRATCH) in setenv script of Arago.

To verify if the path is absolute of a symlink, compare the output of "pwd" and "pwd -P" output while being inside the directory:

$ cd /OE/arago-tmp
$ pwd; pwd -P

Q: How can I modify a single package and rebuild without modifying any other parts of the filesystem?

  • A:

Q: How do I add a new package?

  • A:

Q: Is there a simple way to add an open source package without learning Arago?

  • A:

Q: How can I reduce the build time?

  • A:
Personal tools