簡體   English   中英

使用C ++ _ Shared Stl將具有ndk r10的庫構建鏈接到具有ndk r13的項目構建

[英]Linking library build with ndk r10 into project build with ndk r13 using c++_shared stl

我們有一個使用android ndk r10e構建的預構建庫。 我們正在使用ndk r13b構建該項目。 嘗試鏈接庫時,對於包含ndk stl提供的類的所有函數(例如字符串),我們的構建都會因未定義的引用錯誤而失敗。 錯誤:

Foo.cpp:39: undefined reference to `namespaceFoo::Bar::fooBar(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)'

我們也通過僅使用ndk 13構建該庫,從而解決了另一個庫的問題。 不幸的是,對於必要的庫之一,它是我們無法控制的。

我們將c ++ _ shared庫鏈接為stl。

有沒有辦法使這項工作? 我們可以以某種方式正確地將庫構建與ndk r10鏈接嗎?

編輯:明確說明我們使用c ++ _ shared stl。 這似乎是潛在的問題。

我知道自問這個問題已有很長時間了。

事實證明,谷歌已經在c ++ _ shared庫和NDK本身上做了很多工作,導致了這些不兼容性。 在以后的NDK中,我們再也沒有遇到過如此重要的事情。

TL / DR:是的,它們不兼容。

暫無
暫無

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

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