Path ./package/usr/lib/libcryptopp.so.8 is owned by uid 1111, gid 1111, which doesn't match any user/group on target. This may be due to host contamination.


Thomas Hill
 

Hi!

I try to create a libcryptopp package for my yocto build with the appended bb-recipe.
That worked without problems on my old build server with Yocto 3.0.

Now I have moved to a new build server and upgrade to Yocto 3.3. Now I have the problem that the do_package function failed.

,---[ bitbake core-image-minimal ]---
| WARNING: libcryptopp-8.2.0+gitAUTOINC+9dcc26c582-r8 do_package: KeyError in ./package/usr/lib/libcryptopp.so.8
| ERROR: libcryptopp-8.2.0+gitAUTOINC+9dcc26c582-r8 do_package: Error executing a python function in exec_python_func() autogenerated:
| [...]
| Exception: Exception: KeyError: 'getpwuid(): uid not found: 1001'
| Path ./package/usr/lib/libcryptopp.so.8 is owned by uid 1001, gid 1001, which doesn't match any user/group on target. This may be due to host contamination.
| [...]
| ERROR: Task (/home/thomas/yocto/meta-X2/recipes-X2/libcryptopp/libcryptopp_8.2.0.bb:do_package) failed with exit code '1'
`------------------

I checked the list and found similar problems but not a real solution for me.

libcryptopp's Makefile uses "cp" for installation. I understand this is bad so I patched the Makefile to use "install" instead. That is the recommended usage I could read in the yocto manual. But this does not help either.

As I understand will the do_install and oe_runmake using the bitbake user's UID for installation in a temp dir. Afterwards the do_package uses fakeroot to create the package with root:root file ownership in the package. Right?
In this case I don't understand where the problem is.

I do not run bitbake as root - why should I? So I don't see a possibility to change the files in the temp dir with "chmod" or "install -o 0".

My current bitbake user has UID 1001. On the old server I think it was 1000. Can this be a problem? I tried a new user with UID 1111 but got the same error. Unfortunatelly I can't test with user 1000. It is occupied.

I am out of ideas. Can someone please poke me in the right direction?

Thanks a lot!
Tom

Join yocto@lists.yoctoproject.org to automatically receive all group messages.