I tried and compiled dev-libs/libtar on amd64 (after adding "dev-libs/libtar ~x86" to /etc/portage/package.keywords). It compiled with these warnings: * QA Notice: Package has poor programming practices which may compile * fine but exhibit random runtime failures. * extract.c:108: warning: incompatible implicit declaration of built-in function ‘strlen’ * extract.c:139: warning: incompatible implicit declaration of built-in function ‘strcpy’ * extract.c:304: warning: incompatible implicit declaration of built-in function ‘strlen’ * extract.c:444: warning: incompatible implicit declaration of built-in function ‘strlen’ * libtar.c:271: warning: incompatible implicit declaration of built-in function ‘exit’ Then I tried to emerge barry-0.14 (mine ebuild - will post soon) and it failed with this: tarfile-ops-nt.cc:108: error: invalid conversion from ‘int (*)(int)’ to ‘int (*)(long int)’ tarfile-ops-nt.cc:108: error: invalid conversion from ‘ssize_t (*)(int, void*, size_t)’ to ‘ssize_t (*)(long int, void*, size_t)’ tarfile-ops-nt.cc:108: error: invalid conversion from ‘ssize_t (*)(int, const void*, size_t)’ to ‘ssize_t (*)(long int, const void*, size_t)’ I assume this package won't work on amd64 without patching. This blocks barry-0.14 from emerging on amd64 with USE="gui" Reproducible: Always Steps to Reproduce:
The ebuild for barry, I mentioned before is here: #250568
~amd64 added, write a patch for the implicit deps (QA notices - ideally file them upstream) * extract.c:108: warning: incompatible implicit declaration of built-in function 'strlen' #include <string.h> * extract.c:139: warning: incompatible implicit declaration of built-in function 'strcpy' #include <string.h> * extract.c:304: warning: incompatible implicit declaration of built-in function 'strlen' * extract.c:444: warning: incompatible implicit declaration of built-in function 'strlen' * libtar.c:271: warning: incompatible implicit declaration of built-in function 'exit' #include <stdlib.h> Thanks for reporting!