簡體   English   中英

在Android NDK上將GNU STL和C ++ 11與V8一起使用

[英]Using GNU STL and C++11 with V8 on Android NDK

我正在使用NDK和V8在Android上構建應用程序。 我寧願使用C ++ 11和GNU STL來實現諸如shared_ptr 但是,V8構建系統似乎被硬編碼為使用stlport_static作為其STL變體。

即使修補構建系統以生成完全獨立的庫 ,V8的構建也不會將STLport靜態鏈接到其.a文件(這是可以預期的),因此我從libv8_base.a未解析的符號中得到了數百個鏈接器錯誤。等。 我還看不到任何方法來指示ndk-build當我使用其他STL變體時應該鏈接到stlport_static

使用gnustl_static是否有合理的方式鏈接到stlport_static ,或者更好的是,有沒有一種方法可以針對gnustl_static來構建Android V8?

你有個問題。 好吧,可以格外小心地將不同的STL混合在單獨的.so中; 但是在一個.so中使用兩個STL根本是不可能的。

您要么需要實現自己的shared_ptr (沒什么大不了的),但是對於gnustl中而不是stlport中存在的所有其他功能,您將面臨同樣的問題。

或者,您需要將V8端口移植到gnustl (恐怕MIT許可證不允許這樣做)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM