On Monday 28 February 2011 10:37:18 am Bob Feretich wrote:
> I am overriding WORKDIR and do_compile because that is what the example
> on the BeagleBoard forum provided (3 years ago). It just stopped working
> when I upgraded.
> 

You can use devshell to find out correct folder:

$bitbake -cdevshell your-recipe

This will open a new shell in your WORKDIR and you should see your Makefile in 
that folder. If not then, you can change your WORKDIR to the correct one.

Regards,
Caglar

> I assume there is a better way to build this type of module with the
> current tool chain, but I have not found a new example.
> Do you have a link to a currently working recipe for building a single
> kernel driver module?
> 
> Regards,
> Bob
> 
> On 2/28/2011 12:11 AM, [email protected] wrote:
> > Date: Mon, 28 Feb 2011 09:08:21 +0100
> > From: Koen Kooi<[email protected]>
> > Subject: Re: [Angstrom-devel] Trouble building a single kernel driver
> >     module  for Angstrom
> > To: [email protected]
> > Message-ID:<[email protected]>
> > Content-Type: text/plain; charset=UTF-8
> >
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > Why are you overriding WORKDIR and do_compile?
> >
> > On 28-02-11 07:57, Bob Feretich wrote:
> >> Previously, I used the below recipe to build a kernel module (.ko) for a
> >> driver that I wrote for the BeagleBoard.
> >> Since I upgraded to the new OE/Angstrom tree it has stopped working and
> >> is showing the most confusing symptoms. There must have been some
> >> fundamental change in the way OE builds these modules, but my google
> >> searches have not provided any clues on what changed.
> >>
> >> Recipe:
> >> DESCRIPTION = "Kernel driver to control digital servomotors."
> >> HOMEPAGE = "http://www.rafresearch.com";
> >> SECTION = "kernel/modules"
> >> PRIORITY = "optional"
> >> LICENSE = "none"
> >> #added by Bob 20100805
> >> KERNEL_VERSION="2.6.33"
> >>
> >> #RDEPENDS = "kernel (${KERNEL_VERSION})"
> >> RDEPENDS = "kernel (2.6.33)"
> >> DEPENDS = "virtual/kernel"
> >> PR = "r0"
> >>
> >>
> >> SRC_URI = " \
> >>      file://rtservo-driver_1.0.0/rtservo-driver.c \
> >>      file://rtservo-driver_1.0.0/rtservo-driver.h \
> >>      file://rtservo-driver_1.0.0/servo-interface.h \
> >>      file://rtservo-driver_1.0.0/Makefile \
> >> "
> >>
> >> WORKDIR =
> >> "${OE_BASE}/build/tmp-angstrom_2008_1/work/beagleboard-angstrom-linux-gn
> >>ueabi/MyModules"
> >>
> >>
> >> S = "${WORKDIR}/rtservo-driver_1.0.0"
> >>
> >> inherit module
> >>
> >> do_compile () {
> >>      unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS CC LD CPP
> >>      env
> >>      oe_runmake
> >> 'MODPATH="${D}${base_libdir}/modules/2.6.33/kernel/drivers/test"' \
> >>
> >> 'KERNEL_SOURCE="${OE_BASE}/build/tmp-angstrom_2008_1/work/beagleboard-an
> >>gstrom-linux-gnueabi/linux-omap-2.6.33-r100/git"' \
> >>
> >> 'KDIR="${OE_BASE}/build/tmp-angstrom_2008_1/work/beagleboard-angstrom-li
> >>nux-gnueabi/linux-omap-2.6.33-r100/git"' \
> >>          'KERNEL_VERSION="2.6.33"' \
> >>          'CC="${KERNEL_CC}"' \
> >>          'LD="${KERNEL_LD}"'
> >>
> >> }
> >>
> >> do_install () {
> >>      install -d ${D}${base_libdir}/modules/2.6.33/kernel/drivers/test
> >>      install -m 0644 ${S}/rtservo-driver*${KERNEL_OBJECT_SUFFIX}
> >> ${D}${base_libdir}/modules/2.6.33/kernel/drivers/test
> >> }
> >>
> >>
> >> Current results:
> >> [Bob@beagleboard setup-scripts]$ bitbake -c compile -b
> >> /media/LINUX/AngstromDist7/setup-scripts/local/recipes/MyModules/rtservo
> >>-driver_1.0.0.bb
> >>
> >>
> >> Build Configuration:
> >> BB_VERSION        = "1.12.0"
> >> METADATA_BRANCH   = "org.openembedded.dev"
> >> METADATA_REVISION = "50e7d72"
> >> TARGET_ARCH       = "arm"
> >> TARGET_OS         = "linux-gnueabi"
> >> MACHINE           = "beagleboard"
> >> DISTRO            = "angstrom"
> >> DISTRO_VERSION    = "2010.7-test-20110228"
> >> TARGET_FPU        = "hard"
> >>
> >> NOTE: Preparing runqueue
> >> NOTE: Executing RunQueue Tasks
> >> NOTE: Running task 1 of 7 (ID: 3,
> >> /media/LINUX/AngstromDist7/setup-scripts/local/recipes/MyModules/rtservo
> >>-driver_1.0.0.bb, do_setscene)
> >> NOTE: package rtservo-driver-1.0.0-r100: task do_setscene: Started
> >> ERROR: Error executing a python function in
> >> /media/LINUX/AngstromDist7/setup-scripts/local/recipes/MyModules/rtservo
> >>-driver_1.0.0.bb:
> >>
> >> IOError: [Errno 2] No such file or directory:
> >> '${OE_BASE}/build/tmp-angstrom_2008_1/work/beagleboard-angstrom-linux-gn
> >>ueabi/MyModules/temp/run.staging_helper.30029'
> >>
> >>
> >> It is creating the directory build/${OE_BASE} to operate in instead of
> >> substituting the contents of the OE_BASE variable.
> >> Even if I bypass that using a relative location, the same error appears.
> >> (run.staging_helper.xxx not found.   There is no run.staging_helper file
> >> in the tmp directory, although the other run. files and log. files are
> >> there.)
> >>
> >> Does anyone have a current working recipe to build a single kernel
> >> driver module? How does it differ?
> >>
> >> Regards,
> >> Bob Feretich
> >
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v1.4.5 (Darwin)
> >
> > iD8DBQFNa1f1MkyGM64RGpERAu1YAKCvUGzi0snCqaX5Agf42YbPW0s3KACgrvJk
> > HdEr+uZFhlJ1YJx/NLun9XE=
> > =giX4
> > -----END PGP SIGNATURE-----
> >
> >
> >
> >
> > ------------------------------
> >
> > _______________________________________________
> > Angstrom-distro-devel mailing list
> > [email protected]
> > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel
> >
> >
> > End of Angstrom-distro-devel Digest, Vol 53, Issue 16
> > *****************************************************
> 
> _______________________________________________
> Angstrom-distro-devel mailing list
> [email protected]
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel
> 

_______________________________________________
Angstrom-distro-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel

Reply via email to