首页 > 移动平台 > 详细

「android」gomobile argument unused during compilation: '-stdlib=libc++'

时间:2019-01-21 18:18:27      阅读:243      评论:0      收藏:0      [点我收藏+]

【问题】

android基于go的NDK开发中配置gomobile参考官方WIKI:https://github.com/golang/go/wiki/Mobile,大致步骤:

1、下载gomobile:$ go get golang.org/x/mobile/cmd/gomobile

2、初始化 $ gomobile init
但是使用gomobile编译官方例子($ gomobile build -target=android golang.org/x/mobile/example/basic)

时提示错误:argument unused during compilation: ‘-stdlib=libc++‘

版本:go 1.11,mac os10.13.1

【解决】

网上居然没搜到该问题,难道就我遇到了这个问题? 开始以为是clang,gcc引起的,更新了go版本,无效。

从字面上理解这个错误,是编译时带了-stdlib=libc++,但是却没有用到该参数???

libc++是针对clang编译器特别重写的C++标准库,libstdc++是gcc的,单独编译用gcc和clang编译cpp文件,无论是否带-stdlib=libc++,均正常。

在官方的github上不小心搜到了一样的问题,我去!花了这么多时间。

修改android的ndk中的build/tools/make_standalone_toolchain.py,去掉-stdlib=libc++,两个地方:

1、flags = ‘-target {} -stdlib=libc++‘.format(target)改为flags = ‘-target {}‘.format(target)

2、cxx_flags = flags + ‘ -stdlib=libc++‘改为cxx_flags = flags

修改之后重新 $ gomobile init

「android」gomobile argument unused during compilation: '-stdlib=libc++'

原文:https://www.cnblogs.com/ftrako/p/10299948.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!