go build for ios 怎么弄?

2021-01-29 15:07:18 +08:00
 JustLookBy

写了个 server,想在 iphone7 上用命令行启动起来。就是在 shell 上 ./iphone_test 就能启动的方式。

写了个 helloworld,用以下命令 Build 失败 env GOOS=darwin GOARCH=arm64 go build -o iphone_test main.go

2489 次点击
所在节点    Go 编程语言
13 条回复
JustLookBy
2021-01-29 15:10:36 +08:00
错误如下
```
/usr/local/go/pkg/tool/darwin_amd64/link: running clang failed: exit status 1

```
错误信息太长的话一直发不出来。。。直接截取第一行先了
🙈有大佬知道怎么弄嘛?
guonaihong
2021-01-29 15:17:47 +08:00
加个 CGO_ENABLED=0 的环境变量试下。
JustLookBy
2021-01-29 15:22:01 +08:00
@guonaihong 加了一样的错误

ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
bruce0
2021-01-29 15:35:34 +08:00
这个是在 Android 上的 可以参考一下

https://www.jianshu.com/p/49f80b1c6477

看你的错误 貌似是 cpu 架构的问题
irytu
2021-01-29 15:36:35 +08:00
@JustLookBy
1. 感觉是需要指定 iOS SDK,你链接的库不应该是 macOS 的( x86 )

2. 你想在 iPhone 上跑命令行程序,前提是你越狱了吗?否则代码签名那关过不去吧
Yc1992
2021-01-29 15:40:08 +08:00
不是有 go-mobile 吗
kuro1
2021-01-29 15:41:07 +08:00
/usr/local/go/pkg/tool/darwin_amd64
kuro1
2021-01-29 15:41:17 +08:00
architecture x86_64
JustLookBy
2021-01-29 15:45:56 +08:00
@bruce0 安卓 arm 和 Linux 的都可以,应该是 cpu 问题 但是不知道怎么解决😂

@irytu 是越狱的。build 还要指定链接库的嘛 没了解过🙈 我去看看
@Yc1992 恩我试试 gomobile~
irytu
2021-01-29 15:46:21 +08:00
irytu
2021-01-29 15:46:58 +08:00
@JustLookBy 是的 因为相当于是交叉编译 链接的 lib 肯定要是 SDK 里面提供的
lerry
2021-01-29 15:48:36 +08:00
sunny352787
2021-01-29 16:00:55 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/749580

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX