在我們的項目中,我們使用的庫非常緊密地在其實現中使用libC++。而當我們加入谷歌地圖SDK,我們得到鏈接錯誤:適用於iOS和libC++的Google Maps SDK
Undefined symbols for architecture i386:
"std::string::_Rep::_M_destroy(std::allocator<char> const&)", referenced from:
gmscore::utils::gmsutils::StringPrintf(char const*, ...) in GoogleMaps(GMSUtils.o)
_GMS_objc_lookUpClass in GoogleMaps(GMSRenames.o)
_GMS_objc_getClass in GoogleMaps(GMSRenames.o)
_GMS_objc_getProtocol in GoogleMaps(GMSRenames.o)
gmscore::vector::CameraPosition::StringValue() const in GoogleMaps(CameraPosition.o)
"std::string::_Rep::_S_empty_rep_storage", referenced from:
gmscore::utils::gmsutils::StringPrintf(char const*, ...) in GoogleMaps(GMSUtils.o)
_GMS_objc_lookUpClass in GoogleMaps(GMSRenames.o)
_GMS_objc_getClass in GoogleMaps(GMSRenames.o)
_GMS_objc_getProtocol in GoogleMaps(GMSRenames.o)
gmscore::vector::CameraPosition::StringValue() const in GoogleMaps(CameraPosition.o)
gmscore::utils::gmsutils::StringPrintf(char const*, ...) in GoogleMaps(GMSUtils.o)
_GMS_objc_lookUpClass in GoogleMaps(GMSRenames.o)
_GMS_objc_getClass in GoogleMaps(GMSRenames.o)
_GMS_objc_getProtocol in GoogleMaps(GMSRenames.o)
gmscore::vector::CameraPosition::StringValue() const in GoogleMaps(CameraPosition.o)
gmscore::utils::gmsutils::StringPrintf(char const*, ...) in GoogleMaps(GMSUtils.o)
_GMS_objc_lookUpClass in GoogleMaps(GMSRenames.o)
_GMS_objc_getClass in GoogleMaps(GMSRenames.o)
_GMS_objc_getProtocol in GoogleMaps(GMSRenames.o)
gmscore::vector::CameraPosition::StringValue() const in GoogleMaps(CameraPosition.o)
"std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)", referenced from:
gmscore::utils::gmsutils::StringPrintf(char const*, ...) in GoogleMaps(GMSUtils.o)
gmscore::model::Point2D::StringValue() const in GoogleMaps(Point2D.o)
"std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&)", referenced from:
gmscore::utils::gmsutils::StringPrintf(char const*, ...) in GoogleMaps(GMSUtils.o)
gmscore::vector::CameraPosition::StringValue() const in GoogleMaps(CameraPosition.o)
它的發生是因爲谷歌地圖的libstdC++庫SDK使用,但我們無法改變其使用的libC++編寫代碼。我們試圖在靜態庫(* .a)中封裝使用libC++的代碼和庫,但沒有成功。 有沒有機會讓事情奏效?也許,可以將Google Maps SDK與libC++關聯起來?
您可能需要針對此功能提出功能請求:http://code.google.com/p/gmaps-api-issues/issues/entry?template=Maps%20SDK%20for%20iOS% 20-%20Feature%20Request – 2013-03-01 12:58:44
http://code.google.com/p/gmaps-api-issues/issues/detail?id=5036大拇指 – Ossir 2013-03-01 13:38:52
功能請求已在上次Google Maps SDK for iOS版本中實施。所以這已經不是問題了。感謝您的支持。請關閉問題。 – Ossir 2013-04-10 12:03:44