V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
工单节点使用指南
• 请用平和的语言准确描述你所遇到的问题
• 厂商的技术支持和你一样也是有喜怒哀乐的普通人类,尊重是相互的
• 如果是关于 V2EX 本身的问题反馈,请使用 反馈 节点
6du
V2EX  ›  全球工单系统

高德地图,在 xcode10 的 beta 版中编译报链接错误,提示找不到 stdc++.6.0.9 库

  •  
  •   6du · 2018-06-07 14:38:07 +08:00 · 4485 次点击
    这是一个创建于 2365 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,我们用 Pods 管理第三方库,经测试,高德的 AMap2DMap 和 AMap3DMap 都有此问题。高德接下来应该很快会=有解决方案,在此之前,我们可以手动修改 Pods-project.debug.xcconfig 文件,将“-l"stdc++.6.0.9"”删除。
    Apple 多年前就把系统中的 libstdc++替换成为 LLVM 优化过的 libc++了,之前 MacOS 和 iOS 为了兼容性一直还是保留了 libstdc++可以给第三方 app 用,WatchOS 和 TvOS 都直接移除了。目前看来从 iOS 12 开始很可能也完全移除了对 libstdc++的支持,App 的代码需要在编译时链接到 libc++上
    1 条回复    2018-06-08 20:03:03 +08:00
    6du
        1
    6du  
    OP
       2018-06-08 20:03:03 +08:00   ❤️ 1
    来自高德开放平台的答复 2018/06/08
    您好,
    非常抱歉,我们已经注意到这个问题,这个问题因为 xcode10 去掉了 stdC++库导致,但因为 cocoapods 不允许修改已经发出的 podspec,所以目前只有临时去解决这个问题,您可以在您的 Podfile 文件中增加下面的代码,以便去掉 stdc++.6.0.9 的引用:
    post_install do |installer|
    installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
    puts config.build_settings
    xcconfig_path = config.base_configuration_reference.real_path
    build_settings = Hash[*File.read(xcconfig_path).lines.map{|x| x.split(/\s*=\s*/, 2)}.flatten]
    build_settings['OTHER_LDFLAGS'][' -l"stdc++.6.0.9"'] = ''
    File.open(xcconfig_path, "w") do |file|
    build_settings.each do |key,value|
    file.puts "#{key} = #{value}"
    end
    end
    end
    end
    end
    感谢您的致信,欢迎持续关注高德开放平台!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5360 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 09:18 · PVG 17:18 · LAX 01:18 · JFK 04:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.