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
