为了账号安全,请及时绑定邮箱和手机立即绑定

Swift源码编译为Xcode项目

标签:
Maya

今天和大家讲讲怎么样将github中的swift源码编译到Xcode可以打开的项目:

1,安装cmake 去官网下载cmake,我下的是目前的最新版本cmake-3.12.0-rc3-Darwin-x86_64.tar.gz,如下图:


webp

cmake官网下载图

下载完成以后,接着就解压,会看到这个玩意儿:


webp

cmake解压后

把这个拷贝到应用程序目录下面,接着打开这个应用程序,找到tools->how to install...这一行,会提示你怎样操作,我选择的是第二个:


webp

cmake tools


webp

cmake

接着可以打开终端了,复制上图画圈的sudo这一行到终端执行一下,好啦,cmake客户端和终端命令都搞定了!

2,安装ninja(从git下载)

首先创建一个文件夹,并定位到这个文件夹下,如下:

mkdir -p ~/ninja && cd ~/ninja

下载安装包:

git clone https://github.com/martine/ninja

进入ninja:

cd ninja

编译ninja:

./configure.py --bootstrap

这里我报了一个错:


webp

编译ninja错误

这个错误不要慌,是缺少re2c,这个时候只要安装好re2c就行了,接下来说说一下如何安装re2c:

进入到这个re2c官网,下载最新的包:我下载的是re2c-1.0.3.tar.gz

下载完成以后解压,然后用命令行定位到解压后的文件夹: cd  re2c路径

也可以打开这个文件夹看一下里面的内容,应该差不多是这个样子(可以查看对应的readme文件,也可以跟着我的步骤来):


webp

re2c

这个时候在命令行这样做:

./configure

等待命令执行完毕再输入:

make

等待执行完毕再输入:

make install

至此,如果一切顺利,re2c就安装完毕了;回头再来安装ninja

cd  定位到你刚才的ninja文件夹:我的是:cd ~/ninja/ninja

这个时候在命令行输入:./configure.py --bootstrap,如果一切顺利,就安装成功了。这个时候可以在终端输入:./ninja --version      如果终端能显示版本就说明正常了。


webp

ninja安装成功

但是有个问题是,这个命令必须制定完整的路径或者像刚才一样在当前目录才可以执行,这个时候我们如果想在任何路径下只要执行 ninja --version都能看到版本就好了,此时我们可以配置环境变量:使用如下命令(如果在~目录下有.bash_profile这个文件就不用创建):

touch ~/.bash_profile    (创建.bash_profile)

用vi 编辑器打开:

vi ~/.bash_profile

在vi编辑器中进行编辑(按i开启编辑),输入以下内容:

export NINJA_HOME=ninja的路径    我这里是: ~/ninja/ninja

export PATH=$PATH:$NINJA_HOME

编辑完成按esc退出编辑,然后按     :wq      保存并退出编辑器

用这个命令让环境变量生效: source ./.bash_profile

这样环境变量就设置成功了,我们测试一下,

cd  /

ninja --version

你会看到出现了ninja的版本号


webp

至此ninja安装完毕。 附上mac配置环境变量的方法:

3,下载swift在github上的仓库:可以按照git上的操作的操作进行,这里我说说我自己的操作


webp

获取source和related project


首先download项目,存储在你自己定义的文件夹里面,我是下载到:~/Deskdop/swift-source 里面:

下载成功以后,就进入到刚才那个文件夹,然后解压,再进入解压后的目录:  执行 utils/update-checkout --clone  这个命令(https的方式),安静的等待执行完毕(时间会有一点长,泡一杯咖啡吧),当然也可以用git ssh的方式操作,只不过需要添加github密钥(参考添加密钥),这一步完成以后就开始编译swift源码了。


webp

编译swift

至此等待编译完毕。


webp

编译的结果



作者:bekin
链接:https://www.jianshu.com/p/d717f19f5d6a



点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消