首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >颤振生成是iOs - Error (Xcode):未定义符号:_objc_msgSend$

颤振生成是iOs - Error (Xcode):未定义符号:_objc_msgSend$
EN

Stack Overflow用户
提问于 2022-10-07 20:33:19
回答 2查看 787关注 0票数 0

几天来,我一直试图在iOs (颤振构建IPA)中构建我的颤振项目,而我似乎总是收到同样的错误:

代码语言:javascript
复制
     "_objc_msgSend$setIOSHasWarnedLocationServicesOff:", referenced from:
      +[LocationAuthorization run:onCancel:] in TSLocationManager(LocationAuthorization.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

它们很多,所以我不会把它们都放在这里,但是它们都与_objc_msgSend$TSLocationManager有关。

我试图在构建设置(Runner )中将"-lc++“添加到其他链接标记中,与此问题相关的是https://github.com/facebookarchive/pop/issues/25,但它仍然失败了,超过100个_objc_msgSend$问题。坦白地说,我已经尝试了很多事情,而且我已经没有线索了。

我注意到,当我从Xcode (Product )构建时,当我选择目标设备-»SE第三代时,它构建得很好,但是当目标设备插入到我的物理设备(插入到我的iPhone上)时,我会得到错误。

当我击中颤振建造IPA,它总是失败。

EN

回答 2

Stack Overflow用户

发布于 2022-10-13 11:23:28

^_^

首先,您可以将xcode更新到上面的14.0版本。

而真正的原因是苹果Clang新的优化方案,_objc_msgSend stup support不支持xcode13。

如果您不想升级您的xcode版本。您可以按照接下来的步骤来更改您的私有框架。

我想您在xcode14中编译了一个框架,然后在xcode13中使用了它。

嗯,现在我看到你回复了,确保我的回答

代码语言:javascript
复制
i'm using Xcode 13.4.1 and it's not having ARCHS_VALID as a build setting @editix – 
Bertrand Gélinas
 22 hours ago 

默认情况下,Xcode 14中的clang将生成以前的本机链接器无法理解的目标文件。

将来,建议在应用程序包中使用Xcode14及以上版本。

如果您有由Xcode14构建的私有框架。

  • 只需将-fno-objc-msgsend-selector-stubs添加到框架项目目标build settings other c flags,然后再次构建,将新框架替换为其他xcode项目

-fno-objc-msgsend-selector-stubs

  • 或在框架项目中添加xcconfig other c flags other c flags

或者您自己的脚本构建框架,您可以在调用xcodebuild命令之前添加一个更改,比如thisxcodebuild -project xxx.xcodeproj build OTHER_CFLAGS="-fno-objc-msgsend-selector-stubs "

票数 2
EN

Stack Overflow用户

发布于 2022-10-12 14:00:40

单击目标>生成设置> VALID_ARCHS >并添加以下内容:

代码语言:javascript
复制
arm64 arm64e armv7 armv7s x86_64

如果您没有找到VALID_ARCHS,请执行以下操作:

单击“生成设置”下的加号。

2-选择“添加用户定义的设置”,它将向您添加NEW_SETTING。

3-将"NEW_SETTING“重命名为"VALID_ARCHS”,并添加以下构建:

代码语言:javascript
复制
arm64 arm64e armv7 armv7s x86_64

如果没有解决您的问题,请遵循这一点,您可以找到工作的答案:

Undefined symbols for architecture arm64

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73992337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档