Swift 开源 Linux Ubuntu Install
Swift 开源了,它现在变成跨平台的了,开源后的 Swift 不止能运行在 MAC 和 iOS 平台,现在也可以运行在 Linux 平台了。swift.org 网站上面提供了在 Linux 上面安装 Swift 环境的完整指引。当前 Swift 支持 Ubuntu 15.10 和 Ubuntu 14.04 两个版本。
这里我使用Ubuntu 14.04,带领大家体验Linux 平台上的 Swift使用,感兴趣的同学感觉看过来;如果确实帮助到了你,记得投票点赞,让更多的的人看到,非常感谢;


工具/原料
- Ubuntu 14.04
- Swift
Ubuntu 14.04安装Swift
- 1
安装 clang 编译器
clang 编译器是苹果公司提供的 C 编译器,是 Swift 必需的一个组件。在终端运行下面命令执行安装:
sudo apt-get --assume-yes install clang

- 2
获取Swift 包
Swift 包下载地址来自 https://swift.org/download 这个页面,也可以根据你自己的需求配置需要下载的包。;
通过 curl 命令来下载 Swift 包:
curl -O https://swift.org/builds/ubuntu1404/swift-2.2-SNAPSHOT-2015-12-01-b/swift-2.2-SNAPSHOT-2015-12-01-b-ubuntu14.04.tar.gz

- 3
安装Swift
1、使用 tar 命令,解压下载完成的 Swift 包:
tar zxf swift-2.2-SNAPSHOT-2015-12-01-b-ubuntu14.04.tar.gz
2、将 Swift 的 bin 目录写入环境变量,这样系统就可以找到我们要执行的命令了:
echo "export PATH=/home/vagrant/swift-2.2-SNAPSHOT-2015-12-01-b-ubuntu14.04/usr/bin:\"${PATH}\"" >> /home/vagrant/.profile
命令行执行使脚本生效:
source /home/vagrant/.profile
3、命令行,输入 swift --version 命令验证 Swift 是否安装成功。
如果安装成功,我们就可以收到类似这样的输出:
Swift version 2.2-dev (LLVM 46be9ff861, Clang 4deb154edc, Swift 778f82939c)
END
使用Ubuntu14.04上的 Swift
- 1
创建一个源文件
Swift 安装成功,创建我们的第一个程序,按照惯例,自然是 Hello World 程序。
使用 vim hello.swift 命令创建一个源文件。
然后在 Vim 中输入 i 进入插入模式,在源文件中输入:
print("Hello, world")
代码写完啦,我们按下 Esc 进入操作模式,然后输入 :wq 保存退出。

- 2
编译运行
源文件创建好之后,使用 swiftc 命令编译代码。
swiftc hello.swift
编译好之后,我们使用 ls 命令查看一下当前目录的内容,除了 hello.swift 文件,编译器为我们生成了一个 hello 可执行文件。我们可以运行这个文件:
./helloHello
运行成功了
也可以直接使用swift 命令执行源码文件
swift hello.swift
Swift 程序不需要导入很多基础的库,也不需要写任何的 main 函数,默认会将外层语句作为程序的入口,这些都融入了现代化的开发思维。
END
使用 Swift 包管理
- 1
开源的 Swift 提供了包管理平台,相信今后无论你使用 Swift 开发一款 iOS APP, 甚至是一个 Linux 服务端程序,你都能够很快的在包管理平台上找到快速解决问题的第三方库。
Swift 开源社区在 Github 上提供了一个例子说明了这个问题,首先我们在 Ubuntu 上面安装 git 命令工具:
sudo apt-get --assume-yes install git

- 2
将 Swift 包管理的示例从 Github 上面克隆到本地
git clone https://github.com/apple/example-package-dealer.git
克隆成功后,我们用 ls 命令看到这个包里面有 4 个文件:
CONTRIBUTING.md Package.swift README.md main.swift
其中 main.swift 是程序的代码文件,而 Package.swift 就是包管理文件,我们来看一下 Package.swift 的内容
这里面定义了我们这个包的名称: name: "Dealer", 然后还定义了它的依赖关系, 它依赖于另外一个代码库;


- 3
抓取下来的依赖项目
通过 Package.swift 的定义,swift build 命令就可以根据相应的依赖关系,自动为我们的项目抓取那些需要的第三方库。
运行 swift build 命令安装依赖,可以看到swift build 在替我们把各种项目的依赖关系处理了一遍;
从输出可以看到,我们复制出来的这个项目的依赖项目,又依赖了其他的项目,形成了一个依赖链条。
当 swift build 命令运行完成自后,我们会发现项目的根目录中多了一个 Packages 目录,这个目录里面存放了我们抓取下来的依赖项目:

Swift 开源 Linux Ubuntu Install的更多相关文章
- Linux(Ubuntu)安装Swift和Swiftlint
很多时候iOS开发完毕需要接入CI中,而很多CI是基于Linux的,需要在Linux平台安装Swift和Swiftlint,下面就是针对这两个软件的安装步骤. Swift安装 环境 系统:Ubuntu ...
- 开源播放器 ijkplayer (五) :Linux/Ubuntu 下编译ijkplayer
一.安装Git与yasm sudo apt-get install git sudo apt-get install yasm 二.下载和配置 SDK.NDK SDK一般开发时肯定都有的,NDK一般是 ...
- Install .NET Core Runtime on Linux Ubuntu 16.04 x64
原文链接https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-current nstall ...
- Arch Linux 安装博通 BCM4360 驱动(Arch Linux, Ubuntu, Debian, Fedora...)
BCM4360 在2010年9月,博通完全开源的硬件驱动[1].该驱动程序 brcm80211已被列入到自2.6.37之后的内核中.随着2.6.39发布,这些驱动程序已被重新命名为 brcmsmac和 ...
- Linux(Ubuntu)下MySQL的安装与配置
转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...
- swift开源项目精选
Swift 开源项目精选-v1.0 2016-03-07 22:11 542人阅读 评论(0) 收藏 举报 分类: iOS(55) Swift(4) 目录(?)[+] 转自 http: ...
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...
- windows远程连接Linux(Ubuntu)的方法
需要做的工作: 1.在Linux(Ubuntu)端安装.设置好SSH 2.下载putty,并通过putty的SSH连接登录Linux 一 .如何在Linux(Ubuntu)端安装.设置好SSH,获取I ...
- remote desktop connect btw Mac, Windows, Linux(Ubuntu) Mac,Windows,Linux之间的远程桌面连接
目录 I. 预备 II. Mac连接Windows III. Windows连接Mac IV. Windows连接Ubuntu V. Mac连接Ubuntu VI. Ubuntu连接Mac VII, ...
随机推荐
- Asp.Net MVC part45 过滤器、模板页
过滤器 使用方式自定义类继承自相应的类或接口,重写方法,作为特性使用在控制器类中重写方法 特性方式的使用注意:如果继承自接口需要让类实现FilterAttribute,才可以作为特性使用使用方式1:作 ...
- 微信开发之自定义菜单--weixin-java-tools
一.前言 平时在开发微信的过程中,肯定会设计到微信的相关菜单的使用,这次就和大家介绍下如何使用weixin-java-tools来管理菜单 二.自定义菜单分类 1.click:点击推事件用户点击cli ...
- Virtualbox环境中安装Oracle 11gr2 RAC(ASM)
系统Oracle Linux 6.5,Oracle 11.2.0.1 终于开始安装ASM和RAC的行程了.开始前需要想清楚的几个事情: 如何规划网络配置(配置多网卡,实现连通性,规划内外网,eth0, ...
- iOS:扩展UIColor,支持十六进制颜色设置
来自转载:http://my.oschina.net/leejan97/blog/307491 摘要: 可以直接使用十六进制设置控件的颜色,而不必通过除以255.0进行转换 #define UICol ...
- 用友u8数据库表结构
用友数据库表名参照表1 Accessaries 成套件表2 AccInformation 帐套参数表3 AdjustPVouch4 AdjustPVouchs5 Ap_AlarmSet 单位报警分类设 ...
- Linux C 面试题总结
1.进程和线程的区别,及优劣性比较 进程和线程的主要差别在于它们是不同的操作系统资源管理方式.进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路 ...
- Less资源汇总
GUI编译工具 为方便起见,建议初学者使用GUI编译工具来编译.less文件,以下是一些可选GUI编译工具: koala(Win/Mac/Linux) 国人开发的LESSCSS/SASS编译工具.下载 ...
- Oracle OS认证 口令文件 密码丢失处理
Oracle OS认证 口令文件 密码丢失处理 分类: Oracle Basic Knowledge2009-10-19 14:24 5031人阅读 评论(9) 收藏 举报 oracleos数据库sq ...
- 删除Kafka中topic
步骤: 1.编辑Kafka启动时加载的配置文件server.properties,添加一行:delete.topic.enable=true 2.重启Zookeeper和Kafka 3.执行: ./b ...
- Android使用sqlliteOpenhelper更改数据库的存储路径放到SD卡上
假设使用默认的系统管理,默认放在包以下.比較省心.并且在卸载app后不会造成数据残留.可是这样也有一个问题.比方我做一个背单词的软件,那么当用户卸载掉这个app时,他辛辛苦苦下载的单词库也没了... ...