Patch files before recipe is parsed
Paul Adams
There is a problem with the Yocto recipe for Python 3 in warrior. It
is missing ntpath in the list of core modules listed in python3-manifest.json. Since warrior is EOL, I was hoping to fix this by patching the python3-manifest.json file but it doesn't work. I think the reason is that the manifest file is read by an anonymous function in the recipe, which I understand is executed during recipe parsing (which I assume happens before the patches are applied). I know the patch is being applied correctly because the content of python3-manifest.json file is correct when I inspect it in the build/tmp/work... directory. My question is whether there is any method in bitbake to apply patches early enough to fix this issue? |
|
anthony.marchand@...
Hello.
I hope you're going well in this period. I'm working with yocto (zeus version) with a soc i.MX6 and kernel 4.19. Actually, I meet a weird issue about the recipe "qtwebengine" in all of my projects that are using zeus version. The compilation was working fine until there, but since approximatively two weeks, with no particular reason, whatever the project I want to compile, I'm unable to compile qtwebengine and making a rootfs image with it inside. So I have tested: 1) bitbake qtwebengine 2) bitbake myimage PS: myimage contain the recipe qtwebengine. But whatever the bitbake commands 1 or 2, Bitbake shows me the same error I don't understand and this error follows: ----------------------------------------------------------------------------------- | In file included from /usr/include/bits/errno.h:26:0, | from /usr/include/errno.h:28, | from /usr/include/c++/7/cerrno:42, | from /usr/include/c++/7/ext/string_conversions.h:44, | from /usr/include/c++/7/bits/basic_string.h:6361, | from /usr/include/c++/7/string:52, | from /usr/include/c++/7/stdexcept:39, | from /usr/include/c++/7/array:39, | from /usr/include/c++/7/tuple:39, | from /usr/include/c++/7/bits/unique_ptr.h:37, | from /usr/include/c++/7/memory:80, | from ../../../../git/src/3rdparty/chromium/v8/src/torque/cfg.h:9, | from ./../../../../git/src/3rdparty/chromium/v8/src/torque/cfg.cc:5, | from v8_snapshot/gen/v8/torque_base_jumbo_1.cc:5: | /usr/include/linux/errno.h:1:10: fatal error: asm/errno.h: No such file or directory | #include <asm/errno.h> | ^~~~~~~~~~~~~ | compilation terminated. ... | Makefile.gn_run:340: recipe for target 'run_ninja' failed | make[3]: *** [run_ninja] Error 1 | make[3]: Leaving directory '/home/yocto/Dev/build_zeus/tmp/work/cortexa9t2hf-neon-mx6qdl-poky-linux-gnueabi/qtwebengine/5.13.0+gitAUTOINC+5d4bac57a0_8a28c0bb19-r0/build/src/core' | Makefile:82: recipe for target 'sub-gn_run-pro-make_first' failed | make[2]: *** [sub-gn_run-pro-make_first] Error 2 | make[2]: Leaving directory '/home/yocto/Dev/build_zeus/tmp/work/cortexa9t2hf-neon-mx6qdl-poky-linux-gnueabi/qtwebengine/5.13.0+gitAUTOINC+5d4bac57a0_8a28c0bb19-r0/build/src/core' | Makefile:76: recipe for target 'sub-core-make_first' failed | make[1]: *** [sub-core-make_first] Error 2 | make[1]: Leaving directory '/home/yocto/Dev/build_zeus/tmp/work/cortexa9t2hf-neon-mx6qdl-poky-linux-gnueabi/qtwebengine/5.13.0+gitAUTOINC+5d4bac57a0_8a28c0bb19-r0/build/src' | Makefile:48: recipe for target 'sub-src-make_first' failed | make: *** [sub-src-make_first] Error 2 | WARNING: exit code 1 from a shell command. | ERROR: Task (/home/yocto/Dev/build_zeus/../meta-qt5/recipes-qt/qt5/qtwebengine_git.bb:do_compile) failed with exit code '1' ----------------------------------------------------------------------------------- I don't understand why bitbake don't find '<asm/errno.h>', because it is present in the kernel 4.19 and in my host system ubuntu 18. Furthermore, I don't understand the problem with run_ninja. I try to change my PC for compilation, but I have got the same error. The PC I use to compile with bitbake got 20 cores intel xeon and 32GB of ram. I think the problem is not from here. :-) Does someone already meet this problem? Does someone know where could be the problem? Thanks for all and best reguards: Anthony. |
|
#yocto "zeus"
#yocto
Monsees, Steven C (US)
This is probably a simple question, but since I am new to yocto there is a lot to learn…
How do I establish kernel access permissions for the “zeus” kernel so that when my application is up and running, (or an application startup script), can create read/write files for access/updating in the ”/etc” and “/dev” directories ?
In the few cases I do this I am seeing unable to open errors… Note the same code appears to work correctly under “rocko”…
Thanks, Steve |
|
Amrun Nisha.R
Thanks Andy,
I tried to boot the linux kernel using TFTP/NFS, i got this below error BOOTP broadcast 1 DHCP client bound to address 10.78.216.7 (12 ms) Using ethernet@30be0000 device TFTP from server 199.63.127.45; our IP address is 10.78.216.7; sending through gateway 10.79.108.1 Filename 'boot\x86\wdsnbp.com'. Load address: 0x42000000 Loading: * ARP Retry count exceeded; starting again Error: Bad gzipped data fdt_file=fsl-imx8mq-var-dart.dtb BOOTP broadcast 1 DHCP client bound to address 10.78.216.7 (17 ms) Using ethernet@30be0000 device TFTP from server 199.63.127.45; our IP address is 10.78.216.7; sending through gateway 10.79.108.1 Filename 'boot\x86\wdsnbp.com'. Load address: 0x43000000 Loading: * ARP Retry count exceeded; starting again WARN: Cannot load the DT is there any way to fix this issue? |
|
Issue related to .wic image
NIKHIL PATIL <nikhilvp29@...>
Hi , We are compiling a core-image-sato-sdk.wic image using bitbake that time i am not able to copy anything into /lib/firmware folder. but when i am compiling core-image-sato-sdk.hddimg that time its work fine . for wic image getting following error . root@intel-corei7-64:~# cp tests/Firmware/* /lib/firmware/ cp: cannot create regular file '/lib/firmware/RS9113_AP_BT_DUAL_MODE.rps': Read-only file systemcp: cannot create regular file '/lib/firmware/RS9113_WC_BL.rps': Read-only file system |
|
#yocto zeus X11 keyboard
#yocto
Monsees, Steven C (US)
I am running zeus based image (that runs without the following error under my rocko build), under zeus build I am now seeing the following :
The XKEYBOARD keymap compiler (xkbcomp) reports: > Warning: Unsupported high keycode 372 for name <I372> ignored > X11 cannot support keycodes above 255. > This warning only shows for the first high keycode. Errors from xkbcomp are not fatal to the X server
Under: .../share/X11/xkb/keycodes/evfev I372 is defined as: // Extended keys that may be generated on "Internet" keyboards. // evdev has standardize names for these.
<I372> = 372; // #define KEY_FAVORITES 364
Is there a build option for this component I can tweak to correct for this ?
Thanks, Steve |
|
Re: Split kernel patches over different machines
Bel Hadj Salem Talel <bhstalel@...>
Hi,
Thanks for the reply, Yes, that did the trick. Thanks, Talel |
|
Re: Split kernel patches over different machines
Quentin Schulz
Hi Talel,
On Wed, Nov 11, 2020 at 03:30:33AM -0800, Bel Hadj Salem Talel wrote: Hi All,SRC_URI_append_mezu-media = " file://media.patch" is what you should use. The issue with your suggestion is that it **replaces** the original variable iff the recipe is built for menzu-media. What you want is to append to the variable iff the recipe is built for menzu-media, that's what the line above does. Quentin |
|
Split kernel patches over different machines
Bel Hadj Salem Talel <bhstalel@...>
Hi All,
I created two different machines "menzu-console" and "menzu-media" I have main patch for device tree for both , and only one patch specific for menzu-media machine So in the linux recipe bbappend I want to set something like this: SRC_URI += "file://main.patch" # FOR BOTH MACHINES SRC_URI_menzu-media += "file://media.patch" # FOR menzu-media ONLY But this didn't work, only "media.patch" is unpacked and moreover the kernel recipe workdir does not contain a content as if unpack didn't work properly. How can I do it ? Thanks, Talel |
|
Re: : When compiling code, how to make a package not hash checked?
ouyangxuan10@163.com
hi Quentin,
|
|
Re: python bump
Mikko Rapeli <mikko.rapeli@...>
On Wed, Nov 11, 2020 at 08:39:42AM +0100, Belisko Marek wrote:
On Wed, Nov 11, 2020 at 8:04 AM <Mikko.Rapeli@...> wrote:Locally, as developer you always have a local branch where you can cherry-pickThanks for sharing. But I'm using official poky release from git so I changes. With git submodules and repo tooling, you should use a local or project specific clone of poky. Or move all updates and changes to your own layers, but I find this doesn't scale and instead branching in git works better. Cheers, -Mikko |
|
How to create new variable in Yocto to use it in a recipe ?
Bel Hadj Salem Talel <bhstalel@...>
Hi All,
I'm not trying to export or create a variable inside a recipe because that's easy and not my case. But I want to create a variable that a user can define in local.conf or in other conf files and a recipe that checks the value of that variable and do some stuff with it like: python (){ a = d.getVar('MY_VARIABLE' or '') } How can I do this? Thanks, Talel |
|
Re: python bump
Martin Jansa
If you don't really need 3.8 and 3.7.5 from warrior would be good enough for you, then backporting it to thud was relatively straightforward as implemented in: and as it's in a separate layer it doesn't make your main distro layer more ugly or difficult to maintain (just drop backports layers when upgrading to newer release instead of trying to find out all backported bits and pieces across a whole set of layers). But even this "small" upgrade from 3.6 to 3.7 introduces ABI change as shown in: so it's better to upgrade completely to a new release if possible at all. On Tue, Nov 10, 2020 at 7:45 PM Marek Belisko <marek.belisko@...> wrote: Hi, |
|
Re: python bump
Marek Belisko
On Wed, Nov 11, 2020 at 8:04 AM <Mikko.Rapeli@...> wrote:
Thanks for sharing. But I'm using official poky release from git so I cannot cherry pick changes. Or you have clone of poky repo and add changes on top from newest versions? Yes but it's not an option for me to do it now ;). Thanks, Marek |
|
Re: Error when building eSDK for a `docker load`able tarball
Josef Holzmayr
Howdy!
Am Mi., 11. Nov. 2020 um 08:18 Uhr schrieb Robert Berger@... <robert.berger.yocto.user@...>: <snip> So it looks like it's extensible SDK specific.<snip> Tried that. Standard SDK works, it's definitely related to the tasks of the eSDK. Greetz |
|
Re: Error when building eSDK for a `docker load`able tarball
Hi,
And as far as I understand you tried to build some extensible SDK against an x86-64 container. Please note, that my SDK most likely contains a bit more than the "standard" stuff[0], but this should not make much of a difference here. [0] https://gitlab.com/meta-layers/meta-resy/-/blob/dunfell/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend I take a container-x86-64: bitbake app-container-image-mosquitto-oci [1] [1] https://pastebin.com/T9hX1H8f bitbake app-container-image-mosquitto-oci -c populate_sdk [2] [2] https://pastebin.com/eujc57DG bitbake app-container-image-mosquitto-oci -c populate_sdk_ext breaks in a similar way[3] [3] https://pastebin.com/rV9ewZa9 So it looks like it's extensible SDK specific. Can you please try with the "standard" sdk instead of the extensible sdk to see if this works for you? You might want to play with IMAGE_CONTAINER_NO_DUMMY = "1" which is defined in poky/meta/classes/image-container.bbclass and try to build a container with a kernel as a workaround in case you build an eSDK. Regards, Robert |
|
Re: python bump
Mikko Rapeli <mikko.rapeli@...>
Hi,
On Tue, Nov 10, 2020 at 07:44:39PM +0100, Marek Belisko wrote: Hi,When backporting changes, I find it better to cherry-pick the changes for e.g. python3 update from master to the old branch that I have to use. In my case I can not update anything which breaks ABIs on target images but can update all development tools like python3. Often fixes and/or updates to components which fail to build are also easy to find from master and cherry-pick, especially if you don't need to build all recipes from poky but only a certain subset. Over time this will make your local branch look horrible though, but at least merges from stable branches will in most cases work, if they are still alive. But like Alex said, using 3.1 dunfell LTS or 3.2 gatesgarth would be better. Hope this helps, -Mikko |
|
Re: python bump
Alexander Kanavin
You should rather move to a yocto release that has the needed python, backporting major pieces like that is difficult to impossible. Alex On Tue, 10 Nov 2020 at 19:45, Marek Belisko <marek.belisko@...> wrote: Hi, |
|
python bump
Marek Belisko
Hi,
I'm using poky release thud and would like to bump python3 to 3.8.x. I took recipe from most recent poky version but I'm hitting issue with e.g. meson build like: Log data follows: | DEBUG: Executing shell function do_configure | Traceback (most recent call last): | File "setup.py", line 25, in <module> | from setuptools import setup | ModuleNotFoundError: No module named 'setuptools' Are there some other things I need to take care when want to bump python3? Thanks and BR, marek -- as simple and primitive as possible ------------------------------------------------- Marek Belisko - OPEN-NANDRA Freelance Developer Ruska Nova Ves 219 | Presov, 08005 Slovak Republic Tel: +421 915 052 184 skype: marekwhite twitter: #opennandra web: http://open-nandra.com |
|
Re: Missing vardeps in meta/classes/roofs_rpm.bbclass?
Alexander Kanavin
This seems like you need to make a patch (for master branch) and send it to oe-core list? :) Alex On Tue, 10 Nov 2020 at 19:04, Loic Domaigne <tech@...> wrote: Salut, |
|