it has a completely different ABI so anything compiled against GLibc will only link with Bionic by pure chance, if it happens to only use very basic function calls. Bionic doesn't implement all the features of GLibc, it only contains the thing we really need, and we add new functions to it on an as-needed basis. Also, it favors simplicity of implementation and short code paths, while GLibc data structures seem to target running efficiently several thousand threads on SMP machines (try to compare the implementations of pthread_mutex_lock() for a good example), which leads to vastly different models and costs.
also Android comes with its own custom dynamic linker, which is used to implement our own prelink scheme (which actually not only help us load libraries much faster, but also reduce their sizes considerably). Also, C++ support is probably very different from other toolchains as well at the moment. On Wed, Dec 3, 2008 at 3:30 AM, dhananjay <[EMAIL PROTECTED]>wrote: > > Hi all, > can anybody tell me what are the factors in bionic libc > which are not compatible > with gnu libc?plz reply. > > > --~--~---------~--~----~------------~-------~--~----~ unsubscribe: [EMAIL PROTECTED] website: http://groups.google.com/group/android-porting -~----------~----~----~----~------~----~------~--~---
