美文网首页
001-Swift进阶-部署调试环境

001-Swift进阶-部署调试环境

作者: Stronger_J | 来源:发表于2020-12-15 10:26 被阅读0次

    一、swift源码下载与配置

    编辑环境

    • xcode12
    • Python 2.x
    • brew install cmake ninja

    编译步骤

    • 第一步:clone swift源码
      git clone --branch swift-5.3.1-RELEASE https://github.com/apple/swift.git
      最新版本到苹果官网下载:地址,Xcode版本要与下载代码匹配。
    • 第二步:update-checkout
      确保当前目录在swift-source下,执行如下命令:
      ./swift/utils/update-checkout --tag swift-5.2.4-RELEASE --clone
      这一步会clone编译swift相关的库,不成功则后面编译一定失败。
    • 第三步:编译
      使用ninja编译
      ./swift/utils/build-script -r --debug-swift-stdlib --lldb
    • 第四步:VSCode调试Swift(网上下载一个Visual Studio Code)
      1、进入VSCode安装插件


      WeChatbd1c861ec102f7246533dc47e9ee9bfa.png

      2、配置JSON


      image.png
    {
     "version": "0.2.0",
     "configurations": [
     {
     "type": "lldb",
     "request": "launch",
     "name": "Debug",
     "program": "${workspaceFolder}/build/Ninja-RelWithDebInfoAssert+stdlib-DebugAssert/swift-macosx-x86_64/bin/swift",
     "args": [],
     "cwd": "${workspaceFolder}"
     }
     ]
    }
    

    3、run运行


    image.png

    过了断点


    image.png image.png

    4、可以在VSCode的控制台下面编写代码,打断点调试了

    image.png
    编写过后会进入HeapObject.cpp文件的swift_allocObjcet方法,可以在这里打断点
    image.png

    5、异常处理
    不显示断点:找到CodeLLDB安装目录,在个人目录(shift+cmd+H),显示隐藏文件(shift+cmd+.),将swift源码source下的build-Ninja-lldb-bin下文件拷贝到.vscode-ex-vadimcm-lldb-bin下,在将lib下的lidlldb.dylib替换成拷贝过来的lldb文件,改名字为lidlldb.dylib。

    校验lldb.dylib库


    image.png

    相关文章

      网友评论

          本文标题:001-Swift进阶-部署调试环境

          本文链接:https://www.haomeiwen.com/subject/cjgigktx.html