Re: status of circulars dependencies in unstable
On 2010年06月06日 15:21, Bill Allombert wrote:
Today circular dependencies in unstable reached an all-time low.
* libc6 libgcc1
This one is tricky, because it is an accurate reflection of the ELF
headers. The gcc and glibc build processes actually jump through a lot
of hoops to generate two libraries that have a circular dependency.
- abort(), which is short and could be pulled in from libc_pic if we
don't mind the code duplication
- memcpy() and memset(), which can be trivially reimplemented or
pulled in from libc_pic
- malloc()/free()/realloc()/calloc(), which can be trivially
implemented using mmap()/munmap()/memset() if chunks allocated here need
not be freed by libc's free().
The other symbols from libgcc are weak references to pthread functions
(i.e. no dependency there), and dl_iterate_phdr() from ld.so, which is
supplied implicitly and ignored by dpkg-shlibdeps.