Re: [yocto] Problem with DNS resolution using resolvconf (poky/daisy)
Did you ever figure this out? The yocto resolvconf package is missing a few things to make it actually work like it works on other distributions. I ripped some parts out of Debian and have it all working (although not polished). If you want to see my .bbappend and extra files I can send them to you. Thanks, Dean On 6/26/2014 4:55 AM, Alex J Lennon wrote: On 26/06/2014 10:23, Alex J Lennon wrote: Hi, I'm looking at resolvconf as I want to be able to pick up dns-nameserver changes in /etc/network/interfaces, and I'm reading that this is the way to do it. Having added the resolvconf package the eth0 interface is now not correctly picking up DNS servers and putting them in /etc/resolv.conf The behaviour is due to /etc/udhcpc.d/S50default which in the absence of resolvconf just creates /etc/resolv.conf (which works) or if the resolvconf binary is present it attempts to use it (which doesn't). resolvconf looks to be using /etc/resolvconf/update.d/libc to create /etc/resolv.conf but is crapping out as /lib/resolvconf/list-records doesn't exist. Is this a bug or could anybody help me to understand if there's some other step I should be taking here? Many thanks, Alex To answer my own question, I see it is a bug, and is in the process of being addressed post-daisy - http://article.gmane.org/gmane.comp.handhelds.openembedded.core/52463 -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Build optimization question
So I am using core-image-minimal and trying to shrink things as much as possible for boot speed. I wrap the bitbake command in some other commands to basically extract the image and then attach it to a kernel as a ramdisk. So the size of the image is critical to boot speed. In some of my custom packages I have used -Os in the gcc command line. Is there a way to set this globally for all the packages built into the image? Any other hints or tips to reduce the size of the build? Or potential changes to u-boot to make it load faster? This is running on a beaglebone black. Thanks, Dean -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] DNS nameservers in Yocto
Add resolvconf to your image. That being said, I'm using dora and the package there was very incomplete. I had to add quite a bit in a .bbappend to make it work properly. On 2/3/2015 9:43 AM, Jim Abernathy wrote: I find that for Static IPs, I have to manually add my DNS name servers to /etc/resolv.conf instead of what I'm use to and that's put the line in /etc/network/interfaces with the dns-nameserver [IP] [IP]. My knowledge base comes from Ubuntu Server where putting everything in "/etc/network/interfaces" covers most things. Anyone know why? Jim A -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] DNS nameservers in Yocto
On 2/3/2015 12:11 PM, Paul Eggleton wrote: Hi Dean, On Tuesday 03 February 2015 11:20:01 Dean wrote: On 2/3/2015 9:43 AM, Jim Abernathy wrote: I find that for Static IPs, I have to manually add my DNS name servers to /etc/resolv.conf instead of what I'm use to and that's put the line in /etc/network/interfaces with the dns-nameserver [IP] [IP]. My knowledge base comes from Ubuntu Server where putting everything in "/etc/network/interfaces" covers most things. Anyone know why? Add resolvconf to your image. That being said, I'm using dora and the package there was very incomplete. I had to add quite a bit in a .bbappend to make it work properly. Would the issues you found have been fixed by this commit? http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=35e0a3eb6725781eb291b3fa90694a68c3b64c60 If not, we should really try to get these fixed in the original recipe - we'd certainly appreciate help there. Cheers, Paul Yeah, that's about 95% of it. I don't think it has a service yet though? Here is my .bbappend. It probably isn't perfect or bug free, but working on my dora builds. I think I ripped the scripts out of the debian packages and then fixed anything necessary to make them work with busybox. cat resolvconf_1.74.bbappend # Added by Dean to fix issues in resolvconf recipe # look for files in this layer first FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" SRC_URI += " file://fixpath.patch \ file://resolvconf.init \ file://netresolvconfdown \ file://netresolvconfup \ file://pppresolvconfdown \ file://pppresolvconfup " inherit update-rc.d INITSCRIPT_NAME = "resolvconf" INITSCRIPT_PARAMS = "start 39 S . stop 41 0 6 ." # add list-records script, its missing in distro # add volatile resolv.conf - package maintainer didnt??!@?! # Add startup/shutdown script FILES_${PN} += " /lib/resolvconf/list-records " do_install_append () { install -d ${D}/lib/${BPN} install -m 0755 bin/list-records ${D}/lib/${BPN}/ echo "l root root 0644 /etc/resolv.conf ${sysconfdir}/${BPN}/run/resolv.conf" >> ${D}${sysconfdir}/default/volatiles/99_resolvconf echo "f root root 0644 ${sysconfdir}/${BPN}/run/resolv.conf none" >> ${D}${sysconfdir}/default/volatiles/99_resolvconf install -d ${D}${sysconfdir}/init.d cp ${WORKDIR}/resolvconf.init ${WORKDIR}/resolvconf install -m 0755 ${WORKDIR}/resolvconf ${D}${sysconfdir}/init.d/ # Add things needed for interfaces coming up and down install -d ${D}${sysconfdir}/network/if-down.d/ install -d ${D}${sysconfdir}/network/if-up.d/ install -d ${D}${sysconfdir}/ppp/ip-down.d/ install -d ${D}${sysconfdir}/ppp/ip-up.d/ install -m 0755 ${WORKDIR}/netresolvconfdown ${D}${sysconfdir}/network/if-down.d/resolvconf install -m 0755 ${WORKDIR}/netresolvconfup ${D}${sysconfdir}/network/if-up.d/000resolvconf install -m 0755 ${WORKDIR}/pppresolvconfdown ${D}${sysconfdir}/ppp/ip-down.d/000resolvconf install -m 0755 ${WORKDIR}/pppresolvconfup ${D}${sysconfdir}/ppp/ip-up.d/000resolvconf } -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Distributing Compilation of Yocto
Can I distribute the compilation with Yocto? I found posts about using icecc to do so, and tried to set it up, but I haven't been able to get it to work correctly. I have two machines which each have two Xeon quadcore processors dedicated to building Yocto, but I can only use one if I can't get this setup. I would really appreciate any help and/or pointers anyone can give on this. Thank you, Mike Dean Engineer EMAC, Inc. http://www.emacinc.com/ (618) 529-4525 ext. 330 ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Makefile package missing
I have a recipe for a set of simple user applications I need on the rootfs. However, my application package was only built w/ -dev & -dbg suffixes (whereas it looks like everything else also has a 3rd package w/o any suffix). For the moment I'm explicitly adding the -dbg version to IMAGE_INSTALL to get around this. Any idea why I'm not getting the 3rd package built? The recipe is pretty thin (other suggestions also welcome): DESCRIPTION = "Test Applications" LICENSE = "SDK" LIC_FILES_CHKSUM = "file://COPYING;md5=528a726dd12b5c980054892aae4ff93d" # SECTION defaults to "base" -- doesn't seem to do anything SECTION = "examples" # Everything inherits from base PR = "r0" PV = "0.1" SRC_URI = "file://." S = "${WORKDIR}" DEPENDS = "demo-fpga" RDEPENDS = "demo-fpga" # Guess PKG_CONFIG_SYSROOT_DIR is the way to pick up sysroot dir for fpga driver header files... EXTRA_OEMAKE = "'CC=${CC}' 'RANLIB=${RANLIB}' 'AR=${AR}' \ 'CFLAGS=${CFLAGS}' 'DRIVERS_SRC=${PKG_CONFIG_SYSROOT_DIR}/usr/include/demo-fpga' 'BUILDDIR=${S}'" #my_bindir = "${bindir}" my_bindir = "/usr/local/bin" do_install () { make INSTALL_DIR=${D}${my_bindir} install } PARALLEL_MAKE = "" BBCLASSEXTEND = "native" Thanks, Dean ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Easy one: fetch fails
I've got the yocto basics, but sill a novice. I'm starting w/ an SDK based on yocto & am trying to add canutil to the build. There's already a recipe in meta-oe, but unfortunately I can't get through my corporate firewall w/ the git protocol. However I can w/ http. So I added a layer w/ a bbppend to change the SRC_URI from "git://git.pengutronix.de/git/tools/canutils.git;protocol=git;tag=${TAG}" to "http://git.pengutronix.de/git/tools/canutils.git;protocol=http;tag=${TAG}"; (and similarly for libsocketcan). If there's simpler/cleaner way to do this I'm open to suggestions. Problem is the fetch fails w/ ERROR: Fetcher failure for URL: 'http://git.pengutronix.de/git/tools/canutils.git'. The fetch command returned success for url http://git.pengutronix.de/git/tools/canutils.git but /home/ds/QorIQ-SDK-V1.3-20121114-yocto/build_p5020ds_release/../sources/canutils.git doesn't exist?! I am able to manually do a git clone w/ the http url. (thought about manually forcing the file into the source dir, but wasn't sure exactly what's expected, especially w/ the tag - still a git novice as well) Thanks, Dean ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Config fragment not being picked up
Think I've followed the example in the manual correctly. My append file is pretty simple: FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}" SRC_URI += "file://can.cfg" I'm doing this in a layer on top of a yocto-based SDK. Don't think it should matter, but the underlying kernel recipe has: do_configure_prepend() { # copy desired defconfig so we pick it up for the real kernel_do_configure cp ${KERNEL_DEFCONFIG} ${B}/.config } Wasn't able to make much sense of the log: lots of "DEBUG: Removing manifest ..." and then some kcfonig output? Any advice/suggestions? Thanks, Dean ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] Config fragment not being picked up
> > Think I've followed the example in the manual correctly. My append file is > pretty simple: > > > > FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}" > > It looks like you forgot the colon at the end of the path. > Try this: > FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" > > -Kevin Good eye, but afraid that didn't help (maybe the path was empty before???). I think the files are getting picked up, since fetch will fail if change the file name to force a not found error. > > > SRC_URI += "file://can.cfg" > > > > I'm doing this in a layer on top of a yocto-based SDK. Don't think it > > should > matter, but the underlying kernel recipe has: > > > > do_configure_prepend() { > > # copy desired defconfig so we pick it up for the real > kernel_do_configure > > cp ${KERNEL_DEFCONFIG} ${B}/.config } > > > > Wasn't able to make much sense of the log: lots of "DEBUG: Removing > manifest ..." and then some kcfonig output? > > Any advice/suggestions? > > > > Thanks, > > > > Dean ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] Config fragment not being picked up
> >>> Think I've followed the example in the manual correctly. My append file > is > >> pretty simple: > >>> > >>> FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}" > >> > >> It looks like you forgot the colon at the end of the path. > >> Try this: > >>FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" > >> > >> -Kevin > > > > Good eye, but afraid that didn't help (maybe the path was empty > before???). I think the files are getting picked up, since fetch will fail if > change the file name to force a not found error. > > > > What release are you using ? I tested this just last night before the > 1.4 release final RC .. so it definitely still works! > > How are you determining that it isn't being picked up? I believe the SDK is based on Yocto 1.2 / Poky 7.0 -- bitbake is 1.15.2. kernel.bbclass kernel_do_configure() looks like it only does a make oldconfig on defconfig...? Should I expect to see the .cfg files being eppended there? The .config I end up with doesn't have the definitions from my .cfg fragment files. > > Cheers, > > Bruce ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] Config fragment not being picked up
> > Think I've followed the example in the manual correctly. My append > > file > >> is > pretty simple: > > > > FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}" > > It looks like you forgot the colon at the end of the path. > Try this: > FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" > > -Kevin > >>> > >>> Good eye, but afraid that didn't help (maybe the path was empty > >> before???). I think the files are getting picked up, since fetch will > >> fail if change the file name to force a not found error. > >>> > >> > >> What release are you using ? I tested this just last night before the > >> 1.4 release final RC .. so it definitely still works! > >> > >> How are you determining that it isn't being picked up? > > > > I believe the SDK is based on Yocto 1.2 / Poky 7.0 -- bitbake is 1.15.2. > > kernel.bbclass kernel_do_configure() looks like it only does a make > oldconfig on defconfig...? > > Should I expect to see the .cfg files being eppended there? > > > > The .config I end up with doesn't have the definitions from my .cfg > fragment files. > > Fragments are processed later in the build procedure. Assuming this is a > linux-yocto based bbappend, they'll be added in the kernel_configme task, > and will modify the base BSP configuration. > > That doesn't mean that all the settings will make it to the final .config, > since > normal LKC processing and missing dependencies would drop > invalid/incorrect settings. The SDK .bb inherits directly from kernel & doesn't use linux-yocto.bb. So listtask doesn't show configme. I see an addtask for it in linux-yocto.inc, but am guessing that trying to shoehorn that in on top of the SDK (in my append file) is probably more trouble than it's worth. Guess I'm better off trying to figure out how to patch the defconfig? > > Cheers, > > Bruce > > > > >> > >> Cheers, > >> > >> Bruce ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] Config fragment not being picked up
> >>> Think I've followed the example in the manual correctly. My > >>> append file > is > >> pretty simple: > >>> > >>> FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}" > >> > >> It looks like you forgot the colon at the end of the path. > >> Try this: > >> FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" > >> > >> -Kevin > > > > Good eye, but afraid that didn't help (maybe the path was empty > before???). I think the files are getting picked up, since fetch > will fail if change the file name to force a not found error. > > > > What release are you using ? I tested this just last night before > the > 1.4 release final RC .. so it definitely still works! > > How are you determining that it isn't being picked up? > >>> > >>> I believe the SDK is based on Yocto 1.2 / Poky 7.0 -- bitbake is 1.15.2. > >>> kernel.bbclass kernel_do_configure() looks like it only does a make > >> oldconfig on defconfig...? > >>> Should I expect to see the .cfg files being eppended there? > >>> > >>> The .config I end up with doesn't have the definitions from my .cfg > >> fragment files. > >> > >> Fragments are processed later in the build procedure. Assuming this > >> is a linux-yocto based bbappend, they'll be added in the > >> kernel_configme task, and will modify the base BSP configuration. > >> > >> That doesn't mean that all the settings will make it to the final > >> .config, since normal LKC processing and missing dependencies would > >> drop invalid/incorrect settings. > > > > The SDK .bb inherits directly from kernel & doesn't use linux-yocto.bb. So > listtask doesn't show configme. > > I see an addtask for it in linux-yocto.inc, but am guessing that trying to > shoehorn that in on top of the SDK (in my append file) is probably more > trouble than it's worth. > > Guess I'm better off trying to figure out how to patch the defconfig? > > The ability to use fragments requires that you at least use the linux-yocto > bbclass, it will work with non linux-yocto recipes, but you need to follow the > example in meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb > > The 1.2 vintage fragments aren't as feature rich as 1.3 and 1.4, but they > should work to add simple fragment modifications. > > I hate to see anyone hacking a defconfig unless nothing else works :) Thanks for all the help. The skeleton example isn't in 1.2. Based on 1.3 I tried adding require recipes-kernel/linux/linux-yocto.inc to my append, but ran into other errors (looks like it adds 5 tasks including kernel_configme). Did a brute-force override of do_kernel_checkout() to get around my 1st error, but then do_patch() failed, so think I'm going to punt & hack defconfig. Thanks again for all the help. > > Bruce > > > > > > >> > >> Cheers, > >> > >> Bruce > >> > >>> > > Cheers, > > Bruce > > ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Trouble patching a package
Seems like this ought to be pretty easy based on the docs - Not sure what I've got wrong. I've added an append to my layer w/ FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" SRC_URI += "0001-yada-yada.patch" # Comment out while debugging #PRINC := "${@int(PRINC) + 1}" The append file is in BBFILES. The patch file is in the same dir as the append file (using a files sub-dir didn't help). Been doing "bitbake -c patch -f pkg" to test/debug. (pkg is canutils, which is autconf based) Ran into a couple thing I didn't understand trying to debug. I tried adding do_patch_append() { bbnote "Got here " } to log my append file was getting picked up, but the parse failed. Didn't get errors if the patch file name was wrong. The log only has a git ls-remote (which seems a little odd). Any help would be appreciated. Dean ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] Trouble patching a package
> > Seems like this ought to be pretty easy based on the docs - Not sure > > what I've got wrong. I've added an append to my layer w/ > > > > FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" > > > > SRC_URI += "0001-yada-yada.patch" > > > > # Comment out while debugging > > #PRINC := "${@int(PRINC) + 1}" > > > > The append file is in BBFILES. The patch file is in the same dir as > > the append file (using a files sub-dir didn't help). Been doing > > "bitbake -c patch -f pkg" to test/debug. (pkg is canutils, which is > > autconf based) > > Based on the path you're using, the patch needs to be in a subdir relative to > your append file. Specifically, the subdir needs to have the same name as the > package. > > -Kevin I've also tried just "${THISDIR}:" with the same results. A lot of this stuff is still magic to me & I'm not sure how to go about demystifying it -- do I have to dig into the underlying classes? E.g., what magic is required to pick up & apply a patch file? Anything named *.patch? > > > > Ran into a couple thing I didn't understand trying to debug. I tried > > adding > > > > do_patch_append() { > > bbnote "Got here " > > } > > > > to log my append file was getting picked up, but the parse failed. > > > > Didn't get errors if the patch file name was wrong. The log only has a git > > ls- > remote (which seems a little odd). > > > > Any help would be appreciated. > > > > Dean > > > > > ___ > > yocto mailing list > > yocto@yoctoproject.org > > https://lists.yoctoproject.org/listinfo/yocto ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Patching from .bbappend
Does anyone have an example of how to apply a patch from an append file? (even better if the base recipe inherits autotools) Dean ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] Patching from .bbappend
Does anyone have an example of how to apply a patch from an append file? (even better if the base recipe inherits autotools) Nevermind - thanks all. Dean ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto