问题
I would like to replace the standard ntpd
that comes with busybox
with the full NTP server released in meta-openembedded.
However, I can't find the configuration or Yocto variable that sets that this version of the busybox should not have ntpd
.
What is the efficient way to do this? Keep in mind that I can't edit the released Poky layer.
回答1:
The way I solved is quite simple.
There was a file in my layer called busybox/files/ntpd.cfg
with a flag CONFIG_NTPD
. I've just set it to n
and busybox was without ntpd.
回答2:
I have in fact done the same to have the complete version of wget. There are 2 steps:
- Configure busybox so that it does not provide such executable.
- Include the recipe you located in your build.
For the first point the most elegant way is to crate a layer with its bbappend for busybox. You can follow the official example. I would initially check the default configuration. You can go faster by doing it manually like explained here. Either if you create a fragment for your bbappend or you do it manually through the bitbake -c menuconfig busybox
. You can check in the sorce code what is the configuration entries that need to be modified.
The second is the easiest part, install ntp recipe either via image recipe or in your local.conf. (IMAGE_INSTALL or CORE_IMAGE_EXTRA_INSTALL variables respectively)
回答3:
Try to add IMAGE_INSTALL_remove = "ntp" or PACKAGE_EXCLUDE = "ntp" to your local.conf.
来源:https://stackoverflow.com/questions/51486985/replace-busybox-ntpd-with-ntp-from-meta-openembedded