2016-07-28 63 views
2

我正在將一個現有的linux應用程序移植到android。該應用程序正在使用共享內存API,如shm_open()等。如何在android本機代碼中使用共享內存?

檢查bionic in android source,我看到這些API不受支持。因此,我在構建過程中遇到鏈接錯誤。

external/l2/avbtp.c:138: error: undefined reference to 'shm_open' 
external/l2/avbtp.c:151: error: undefined reference to 'shm_unlink' 
external/l2/avbtp.c:186: error: undefined reference to 'shm_unlink' 

如何正確解決此問題?

回答

0

嗯,我發現這個github項目,它的工作原理! https://github.com/pelya/android-shmem

就像一個神奇的,它完美的作品。您可以在獨立進程中使用shmget(),shmat()和shmdt()API無縫地在android中使用共享內存。試一試。