美文网首页
Swift源码编译

Swift源码编译

作者: 方小花c | 来源:发表于2022-08-09 11:07 被阅读0次

Swift源码编译,小坑比较多,历时2周(乐色)。

一、编译环境

官方文档:https://github.com/apple/swift/blob/main/docs/HowToGuides/GettingStarted.md#system-requirements

Xcode版本:Version 13.4.1 (13F100),macOS版本:12.3.1

安装VSCode

安装Homebrew

安装cmake:brew install cmake

安装njnia:brew install njnia:brew

建议:下载源码和编译需要50G~60G,可选择在移动硬盘上(坑1:电脑内存不够用卡死)

二、下载源码

2.0、创建文件夹

mkdir swift-build

cd swift-build

2.1、查看当前swift版本

swift --version     当前版本是5.6.1

2.2、下载与自己xcode的swift release源码匹配版本

git clone --branch swift-5.6.1-RELEASE https://github.com/apple/swift.git

2.3、下载编译过程中需要的其他分支文件

./swift/utils/update-checkout --tag swift-5.6.1-RELEASE --clone

坑2:提示xcode不匹配

env SKIP_XCODE_VERSION_CHECK=1 ./swift/utils/update-checkout --tag swift-5.6.1-RELEASE --clone

坑3:没有找到python2.7

查看本地python版本:python --version (本地python 3.7)

去官网下载python2.7:https://www.python.org/downloads/release/python-2718/

下载安装完以后,vim ~./bash_profile ,写入alias python='/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7'

生效:source ~./bash_profile

再次查看python版本,已经切换到2.7

三、编译

./swift/utils/build-script -r --debug-swift-stdlib --lldb

提示:这步需要很长的时间

坑4:ImportError: No module named six

python缺少文件,去官网下载:https://pypi.org/project/six/#files

下载完后命令行,cd进入该根目录

执行 python setup.py install,此时安装six完成

再次执行编译命令

四:配置VSCode调试swift

4.1、用VSCode打开swift-build文件

4.2、安装codelldb插件

4.3、配置json文件

{

    "version": "0.2.0",

    "configurations": [

        {

            "type": "lldb",

            "request": "launch",

            "name": "Debug",

            //此处路径为swift编译文件的路径

            "program": "${workspaceFolder}/build/Ninja-RelWithDebInfoAssert+stdlib-DebugAssert/swift-macosx-x86_64/bin/swift",

            "args": [],

            "cwd": "${workspaceFolder}"

        }

    ]

}

4.4、开始调试swift

过掉断点继续执行

相关文章

  • Swift 进阶之路 文章汇总

    Swift-进阶 01:Swift源码编译[https://www.jianshu.com/p/284406133...

  • Swift 进阶汇总

    Swift-进阶 01:Swift源码编译[https://www.jianshu.com/writer#/not...

  • swift编译浅析

    1. 编译器介绍 swift的编译器是swiftc 1.1 编译历程 SwiftCode源码->通过词法分析、语法...

  • Swift源码编译

    准备工作 磁盘空间60G 编译环境 Xcode 12.2(12B45b) Visual studio Code( ...

  • Swift源码编译

    编译环境 xcode :Mac系统自带 Python :Mac系统自带 cmake:通过brew list命令查看...

  • Swift源码编译

    编译环境 macOS Big Sur 11.0.1 Xcode 12.2 Python 2.x brew inst...

  • Swift源码编译

    本文转载自逻辑iOS技术号[https://mp.weixin.qq.com/s/WjY4z4I_FFQlB1gE...

  • swift 源码编译

    编译环境 MacOS Big Sur 11.0.1Xcode 12.4Python 2.xbrew install...

  • Swift源码编译

    Swift源码编译,小坑比较多,历时2周(乐色)。 一、编译环境 官方文档:https://github.com/...

  • Swift-文章汇总

    Swift-01:Swift源码编译[https://www.jianshu.com/p/55ad02c72e5f...

网友评论

      本文标题:Swift源码编译

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