nurgan nurgan - 6 months ago 19
Android Question

What are the most important POSIX functions not available in Android?

I'm about to port a large C++ project (some sort of Library Project, it contains absolutely no GUI) to Android. It's actually a Visual C++ project, but it will be ported to Linux as intermediate step. I know that Android is not a "full" Linux and does not claim to provide all POSIX functions, but I also know there are a lot of "POSIXish functions" on Android by using the NDK.

Now my actual question is:

Which are the biggest/most important functions that are NOT available on Android compared with the full POSIX set? So that I can keep that in mind when doing the porting from Visual C++ to Linux GCC.

I tried to find something on Google, but found nothing really helpful, just here and there some stuff that mentioned that there are some POSIX functions on Android...

Answer

Bionic a recode by Google. It is small but optimized for Android.

The only big thing I know of that it lacks is indeed the pthread_cancel() function.

My experience is that if you port it successfully to GNU/Linux, without pthread_cancel() calls, then you should be mostly ok.

BTW, what kind of library are you trying to build? What does it uses? Network, threads...

PS: Even Linux is not fully POSIX.