Xcode控制台“po“错误:表达式解析失败

iOS开发中,使用Xcode开发时,有时候原本运行好好的项目,突然调试时,发现po命令无法正常显示变量的值,无论是清空编译目录,还是重装Xcode,都无法解决问题。当使用po命令时,显示如下:

通过百般折腾与搜索,终于在github上找到了解决该问题的方案:https://github.com/florentmorin/Xcode13LLDBBug

因为我的项目是通过Pod集成依赖的,所以按照解决方案中针对pod的解决方式就行。有几个点需要说明下,就在解决方案的描述上进行说明:

post_integrate do |installer|
	// 注意在项目里面找到对应文件的正确路径,如果这个文件路径有问题,pod install会报错
    xcconfig_path = installer.sandbox.target_support_files_root.to_s + '/Pods-App/Pods-App.debug.xcconfig'

    xcconfig_content = File.read xcconfig_path
    xcconfig_original_ld_flags = xcconfig_content.match(/OTHER_LDFLAGS = ([^\n]+)\n/)[1]

    xcconfig_new_ld_flags = <<~CONTENT

    // Xcode 13.3+
    //	InternalPod换成你需要debug的代码所在的库的名字,如果有多个库debug出问题,就按照这个格式,把多个库加上去。
    OTHER_LDFLAGS = #{xcconfig_original_ld_flags} -Wl,-add_ast_path,$(TARGET_BUILD_DIR)/InternalPod/InternalPod.framework/Modules/InternalPod.swiftmodule/$(NATIVE_ARCH_ACTUAL)-apple-$(SHALLOW_BUNDLE_TRIPLE).swiftmodule

	 //现在的xcode版本基本都是Xcode 15及以上了,所以下面这几行不需要了。
    // Xcode 13.2
    OTHER_LDFLAGS[sdk=iphoneos15.2] = #{xcconfig_original_ld_flags} -Wl,-add_ast_path,$(TARGET_BUILD_DIR)/InternalPod/InternalPod.framework/Modules/InternalPod.swiftmodule/$(NATIVE_ARCH_ACTUAL)-apple-ios.swiftmodule
    OTHER_LDFLAGS[sdk=iphonesimulator15.2] = #{xcconfig_original_ld_flags} -Wl,-add_ast_path,$(TARGET_BUILD_DIR)/InternalPod/InternalPod.framework/Modules/InternalPod.swiftmodule/$(NATIVE_ARCH_ACTUAL)-apple-simulator.swiftmodule

    CONTENT

    xcconfig_content.gsub! /OTHER_LDFLAGS = ([^\n]+)\n/, xcconfig_new_ld_flags

    File.open(xcconfig_path, 'w') do |f|
      f.puts xcconfig_content
    end

end
相关推荐
zzxxlty1 小时前
MacOS 本地生成SSH key并关联Github
macos·ssh·github
想取一个与众不同的名字好难1 小时前
android studio导入OpenCv并改造成.kts版本
android·ide·android studio
Best_Me072 小时前
如何在Pycharm的终端里进入自己的环境
ide·python·pycharm
刘凑华3 小时前
使用vscode 连接linux进行开发
ide·vscode·编辑器
码界领航3 小时前
2024 Visual Studio Code的下载与安装
ide·vscode·编辑器
Java小白笔记4 小时前
Mac中安装OhMyZsh
macos
DisonTangor4 小时前
拆解测试显示Mac Mini (2024)固态硬盘并未锁定 互换硬盘后仍可使用
macos
狂奔solar5 小时前
分享个好玩的,在k8s上部署web版macos
前端·macos·kubernetes
代码猪猪傻瓜coding5 小时前
macos 搭建自己的git pages
macos