Go编译linux:iOS的 Go编译(golang on ios)

我已经在这个问题上工作了一整天,非常坚持。我很乐意帮忙。

我试图编译一个 C / Go 代码在我的 iOS Swift 应用程序中运行。该库编译正常的 amd64 架构。

要进行编译,我从这个编译步骤开始,生成一个静态的.a 存档。

GOOS = ios GOARCH = arm64 CGO_ENABLED = 1 CC = $(go env GOROOT) / misc / ios / clangwrap.sh go build-ldflags-w-v-tags ios-o "storj_上行链路-arm64.a"-buildmode = c-archive

在我使用磨砂转换为 dylib 之后的下一步

xcrun-sdk iphoneos clang-arch arm64-fpic-shared-Wl,-all_load storj_上行链路-arm64.a-framework Corefoundation-o libuplinkc.dylib

在 Xcode 中,我将依赖关系拖到复制文件构建阶段。从 Swift,我检查我需要的各种符号地址,我可以确认超出该步骤。但是当实际的二进制文件运行时,我收到一系列运行时错误。

dyld4 配置:DYLD_LIBRARY_PATH = / usr / lib / system / 内省 DYLD_INSERT_LIBRARIES = / Developer / usr / lib

在 lldb 调试器中,此消息与线程 12 信号 SIGILL 错误一起给出。

libuplinkc.dylib`golang.org/x/sys/cpu.getisar0:
->  0x10c7a36f0 <+0>:  mrs    x0, ID_AA64ISAR0_EL1
    0x10c7a36f4 <+4>:  str    x0, [sp, #0x8]
    0x10c7a36f8 <+8>:  ret    
    0x10c7a36fc <+12>: udf    #0x0

基于这些错误和步骤,我相信这与 Go 构建过程有关,但不清楚什么是。如果这有所帮助,我正在使用 Storj 上行链路-c 到 Swift 绑定 (relevant ticket here)。人们似乎非常确信 C 库很好,并建议我去 Go 社区进行更多调试。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(672)
Ios怎么玩牧场物语:如何在iOS上玩.GIFV和.WEBM
上一篇
崩坏三ios模拟器:在线 iOS模拟器(iphone simulator online)
下一篇

相关推荐

  • ios更新软件一直等待中:等待iOS更新软件的无尽痛苦

    iOS更新软件一直处于等待中,可能是由于网络问题或者其他原因导致无法正常更新。解决方法:…

    2023-01-09 12:10:21
    0 49 76
  • ios app生命周期从启动到退出的过程

    示例示例iOS App生命周期包括以下几个阶段:启动(Launch):当用户点击应用图标时,系统会调用()函数,创建一个实例,同时会调用的。方法,在此方法中,可以进行一些初始化操作,如初始化window、设置导航控制器、设置根视图等。…

    2023-02-24 11:08:58
    0 72 61
  • ios暂停更新苹果开启新时代

    iOS暂停更新指的是iOS应用程序在运行过程中暂停更新,也就是说,当应用程序处于后台时,它不会自动更新。要实现iOS暂停更新,可以使用以下代码:…

    2023-03-24 13:29:28
    0 37 26
  • ios看书软件:在iOS上阅读,拓展你的知识视野

    iOS看书软件是一款可以在iOS设备上阅读电子书的应用程序。它可以帮助用户从电子书中获取信息,并提供有关电子书的搜索、浏览、管理和阅读功能。…

    2023-03-21 03:06:50
    0 65 61
  • ios台服idiOS台服的冒险之旅

    iOS台服ID是一种唯一标识符,用于识别iOS设备,如iPhone、iPad、iPod touch等。它是一个长度为40个字符的字符串,由0-9和a-f组成。…

    2023-01-14 09:01:01
    0 10 14
  • ios手机解压软件最佳iOS解压软件,轻松解压文件!

    iOS手机解压软件是指能够将压缩文件(如ZIP,RAR,7z等)解压缩到iOS手机上的软件。目前市面上有很多iOS手机解压软件,比如WinZip,iZip,Unzip,Zip Browser,iUnarchive等。以WinZip为例,它可以帮助用户在iOS设备上快速解压缩ZIP、RAR、7z、TAR、GZIP和BZIP2文件。它还可以将文件加密,并将其传输到其他设备。…

    2023-02-04 08:07:19
    0 49 94
  • ios怎么给视频加音乐:如何在iOS上为视频添加背景音乐

    iOS上给视频加音乐的方法有很多,具体步骤如下:准备好视频和音乐文件,将它们放在同一目录中。…

    2023-03-04 07:00:29
    0 63 14
  • ios低电量模式有什么用节省电量、延长手机使用时间

    实现实现iOS低电量模式有助于节省电量,从而延长设备的使用时间。它可以通过减少屏幕亮度、关闭非必要的功能或服务来实现这一目标。代码实现:…

    2023-02-13 08:40:20
    0 80 37

发表评论

登录 后才能评论

评论列表(70条)