XCode构建报错:ld: library not found for -lDoubleConversion求助
解决Xcode构建React Native项目时
ld: library not found for -lDoubleConversion错误 我之前也碰到过一模一样的问题——react-native run-ios能正常构建运行,但直接在Xcode里点构建就报链接错误,一堆依赖库的目录找不到警告。核心原因是Xcode没正确识别到依赖库的构建产物路径,试试下面这些步骤,大概率能搞定:
1. 清理Derived Data缓存
这是最常用的修复手段,先把Xcode的缓存彻底清掉:
- 打开Xcode,点击顶部菜单栏的
Xcode>Preferences - 切换到
Locations标签,找到Derived Data,点击旁边的箭头打开文件夹 - 删除整个Derived Data文件夹,或者只删掉当前项目对应的子目录
- 关闭Xcode,重新打开项目再尝试构建
2. 检查项目Build Settings的搜索路径
有时候依赖库的搜索路径配置出了问题:
- 在Xcode里选中项目主target,进入
Build Settings标签 - 搜索
Library Search Paths,查看里面的路径是否和报错里的路径一致(比如-L/Users/xxxxx/Library/Developer/Xcode/DerivedData/xxxxx/Build/Products/Debug-iphonesimulator/开头的条目) - 如果这些路径存在,尝试改成相对路径,或者直接删除,让CocoaPods自动管理依赖路径(如果你用了CocoaPods的话)
3. 重新执行CocoaPods依赖安装
React Native的iOS依赖基本靠CocoaPods管理,重新安装一次往往能修复路径问题:
- 打开终端,cd到项目的
ios目录下 - 执行
pod deintegrate彻底移除现有Pods配置 - 再执行
pod install重新安装所有依赖 - 安装完成后,**一定要打开
xxx.xcworkspace文件(不是.xcodeproj)**来构建项目
4. 确认构建目标与命令行一致
react-native run-ios默认针对模拟器构建,Xcode里的目标可能不匹配:
- 在Xcode顶部的设备选择器里,确认你选的是和
react-native run-ios一致的模拟器(比如iPhone 14) - 同时检查构建配置是
Debug还是Release,确保和命令行默认的Debug模式一致
5. 手动单独构建依赖库
如果上面的方法都不行,试试让Xcode先单独构建出错的依赖:
- 在Xcode的项目导航栏里,找到
Pods目录下的DoubleConversiontarget - 选中它,点击顶部的构建按钮(或按Cmd+B)单独构建这个库
- 等构建完成后,再回到主target进行整体构建
内容的提问来源于stack exchange,提问作者Shun Yamada
相关产品推荐
相关产品推荐

