链接器命令失败,退出代码为 1 - 重复符号 __TMRbBp
Linker command failed with exit code 1 - duplicate symbol __TMRbBp
自从我更新到 Xcode 8.1 后,我无法存档,也无法在发布模式下 运行(在调试模式下正常工作)。错误是有几个"duplicate symbols for architecture arm64",都是"duplicate symbol __TMRbBp"。那是什么?
这似乎是 Swift 中的错误。看
discussion on Apple developers portal
据说在即将发布的Xcode版本中已经修复。
但目前有临时解决方法:
转到目标 Build Settings
并将 Reflection Metadata Level
标志设置为 None
不要双击 Project.xcodeproj 来启动您的 xcode 项目。相反,关闭您的项目并打开 xcworkspace。
File -> Close Workspace
File -> Open -> Search your project folder for Project.xcworkspace
我所有的错误都消失了。
对于那些无法让 Thorax 的答案起作用的人,我所做的是在我的命令行上关闭 Xcode、运行 pod update
,然后重新打开 . xc 工作区文件。这样做之后,我就可以构建并 运行 项目了。
我正在使用 Firebase Cocoapod 和 Xcode 版本 9.1。
我在 9.2 版(9C40b)中遇到了类似的问题,解决方案是
0) Close Xcode
1) Open project folder in terminal
2) pod update
3) open .
4) open project by clicking Project.xcworkspace
令人惊讶的是,在某些情况下,简单地清洁产品对我来说很管用。
- Product/Clean (Shift+Cmd+K)
- Product/Clean 构建文件夹 (Alt+Shift+Cmd+K)
在查看其他解决方案之前尝试快速修复。
1.关闭你的项目:完全退出Xcode。
2.转到您的项目位置:您会在根文件夹中找到两个具有不同扩展名的文件:
Appname.xcodeproj 和 Appname.xcworkspace
现在双击扩展名为 xcworkspace.(***Appname.xcworkspace*) 的文件打开您的项目**
您的项目将在 xcode 后打开。
现在 运行 又是您的项目。
如果您在安装 pods 时仔细观察,firebase 会明确使用 your-project.xcworkspace 打开您的项目 安装后 pods
firebaseIOS Setup
$ cd your-project directory
$ pod init
添加到 Podfile
豆荚'Firebase/Core'
最后:
$ pod install
$ open your-project.xcworkspace
别忘了将 firebase 添加到您的 AppDelegate
我在 Xcode 8.1.
上存档时遇到了同样的问题
X代码版本:8.2.1版(8C1002)
以下修复于 2019 年 3 月生效
1) 转到项目 & Select 你的项目
2) Select 构建设置 -
Search for "Enable Bitcode" Set option as "NO"
3) 大多数版本都会修复这个问题,对于少数其他 XCode 版本也可以尝试这个选项,
Search for "Reflection Metadata Level" Set option as "NONE"
我 运行 最近创建了一个新项目并向该项目添加了一些 pods (特别是 AlamoFire)。麻烦几个小时左右重新创建项目(它是新的)几次。尝试了这里的所有方法,但没有成功。
最终我发现这是因为当我通过命令行 "open myProject.xcworkspace" 打开工作区时,XCode V10.1 也在打开旧项目文件以及新的 pod 创建的工作区我在完成 "pod install"
后重新打开了项目
在退出之前关闭所有项目 XCode 在我完成 "pod install" 之前为我修复了所有问题。
如果您使用的是 Ionic 以及 Push 和 Console 插件,那就是问题所在。删除 cordova 控制台插件(已弃用),错误将消失。
链接器错误说库是重复的,事实上,这是真的,因为控制台插件已经在 cordova-ios 4.5+
我花了几个小时才弄明白!
关闭你的项目然后打开 xcode 转到文件 -> 打开搜索你的项目并打开它。这对我有用
由于删除了一些文件,我收到了这个错误。对我来说,只需克隆我的项目就可以了。
我在目标的构建阶段从编译源中删除了文件。我添加了 main.m
并且有效。
以我为例
- Select 你的项目(在我的例子中我有 2 个目标)
- 转到构建阶段
- 编译源代码
- 检查每个目标上的物品数量是否相同(我的不一样)
- 添加丢失的文件/删除重复的文件
问题已解决
在 Xcode 10.1 中遇到了同样的问题并且能够解决它。在路径 Project Target > Build Setting > No Common Blocks
中,我将其更改为 No
.
我在向我的项目添加框架时遇到了类似的问题。
我通过删除框架并通过将框架文件拖放到项目框架文件夹并选择“需要时复制项目”选项再次将框架添加到项目中解决了这个问题。
自从我更新到 Xcode 8.1 后,我无法存档,也无法在发布模式下 运行(在调试模式下正常工作)。错误是有几个"duplicate symbols for architecture arm64",都是"duplicate symbol __TMRbBp"。那是什么?
这似乎是 Swift 中的错误。看 discussion on Apple developers portal
据说在即将发布的Xcode版本中已经修复。 但目前有临时解决方法:
转到目标 Build Settings
并将 Reflection Metadata Level
标志设置为 None
不要双击 Project.xcodeproj 来启动您的 xcode 项目。相反,关闭您的项目并打开 xcworkspace。
File -> Close Workspace
File -> Open -> Search your project folder for Project.xcworkspace
我所有的错误都消失了。
对于那些无法让 Thorax 的答案起作用的人,我所做的是在我的命令行上关闭 Xcode、运行 pod update
,然后重新打开 . xc 工作区文件。这样做之后,我就可以构建并 运行 项目了。
我正在使用 Firebase Cocoapod 和 Xcode 版本 9.1。
我在 9.2 版(9C40b)中遇到了类似的问题,解决方案是
0) Close Xcode
1) Open project folder in terminal
2) pod update
3) open .
4) open project by clicking Project.xcworkspace
令人惊讶的是,在某些情况下,简单地清洁产品对我来说很管用。
- Product/Clean (Shift+Cmd+K)
- Product/Clean 构建文件夹 (Alt+Shift+Cmd+K)
在查看其他解决方案之前尝试快速修复。
1.关闭你的项目:完全退出Xcode。 2.转到您的项目位置:您会在根文件夹中找到两个具有不同扩展名的文件: Appname.xcodeproj 和 Appname.xcworkspace
现在双击扩展名为 xcworkspace.(***Appname.xcworkspace*) 的文件打开您的项目**
您的项目将在 xcode 后打开。 现在 运行 又是您的项目。
如果您在安装 pods 时仔细观察,firebase 会明确使用 your-project.xcworkspace 打开您的项目 安装后 pods firebaseIOS Setup
$ cd your-project directory
$ pod init
添加到 Podfile
豆荚'Firebase/Core'
最后:
$ pod install
$ open your-project.xcworkspace
别忘了将 firebase 添加到您的 AppDelegate
我在 Xcode 8.1.
上存档时遇到了同样的问题X代码版本:8.2.1版(8C1002)
以下修复于 2019 年 3 月生效
1) 转到项目 & Select 你的项目
2) Select 构建设置 -
Search for "Enable Bitcode" Set option as "NO"
3) 大多数版本都会修复这个问题,对于少数其他 XCode 版本也可以尝试这个选项,
Search for "Reflection Metadata Level" Set option as "NONE"
我 运行 最近创建了一个新项目并向该项目添加了一些 pods (特别是 AlamoFire)。麻烦几个小时左右重新创建项目(它是新的)几次。尝试了这里的所有方法,但没有成功。
最终我发现这是因为当我通过命令行 "open myProject.xcworkspace" 打开工作区时,XCode V10.1 也在打开旧项目文件以及新的 pod 创建的工作区我在完成 "pod install"
后重新打开了项目在退出之前关闭所有项目 XCode 在我完成 "pod install" 之前为我修复了所有问题。
如果您使用的是 Ionic 以及 Push 和 Console 插件,那就是问题所在。删除 cordova 控制台插件(已弃用),错误将消失。
链接器错误说库是重复的,事实上,这是真的,因为控制台插件已经在 cordova-ios 4.5+
我花了几个小时才弄明白!
关闭你的项目然后打开 xcode 转到文件 -> 打开搜索你的项目并打开它。这对我有用
由于删除了一些文件,我收到了这个错误。对我来说,只需克隆我的项目就可以了。
我在目标的构建阶段从编译源中删除了文件。我添加了 main.m
并且有效。
以我为例
- Select 你的项目(在我的例子中我有 2 个目标)
- 转到构建阶段
- 编译源代码
- 检查每个目标上的物品数量是否相同(我的不一样)
- 添加丢失的文件/删除重复的文件
问题已解决
在 Xcode 10.1 中遇到了同样的问题并且能够解决它。在路径 Project Target > Build Setting > No Common Blocks
中,我将其更改为 No
.
我在向我的项目添加框架时遇到了类似的问题。
我通过删除框架并通过将框架文件拖放到项目框架文件夹并选择“需要时复制项目”选项再次将框架添加到项目中解决了这个问题。