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. 1

    安装 clang 编译器

    clang 编译器是苹果公司提供的 C 编译器,是 Swift 必需的一个组件。在终端运行下面命令执行安装:

    sudo apt-get --assume-yes install clang

  2. 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. 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. 1

    创建一个源文件

    Swift 安装成功,创建我们的第一个程序,按照惯例,自然是 Hello World 程序。

    使用 vim hello.swift 命令创建一个源文件。

    然后在 Vim 中输入 i 进入插入模式,在源文件中输入:

    print("Hello, world")

    代码写完啦,我们按下 Esc 进入操作模式,然后输入 :wq 保存退出。

  2. 2

    编译运行

    源文件创建好之后,使用 swiftc 命令编译代码。

    swiftc hello.swift

    编译好之后,我们使用 ls 命令查看一下当前目录的内容,除了 hello.swift 文件,编译器为我们生成了一个 hello 可执行文件。我们可以运行这个文件:

    ./helloHello

    运行成功了

    也可以直接使用swift 命令执行源码文件

    swift hello.swift

    Swift 程序不需要导入很多基础的库,也不需要写任何的 main 函数,默认会将外层语句作为程序的入口,这些都融入了现代化的开发思维。

    END

使用 Swift 包管理

 
  1. 1

    开源的 Swift 提供了包管理平台,相信今后无论你使用 Swift 开发一款 iOS APP, 甚至是一个 Linux 服务端程序,你都能够很快的在包管理平台上找到快速解决问题的第三方库。

    Swift 开源社区在 Github 上提供了一个例子说明了这个问题,首先我们在 Ubuntu 上面安装 git 命令工具:

    sudo apt-get --assume-yes install git

  2. 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. 3

    抓取下来的依赖项目

    通过 Package.swift 的定义,swift build 命令就可以根据相应的依赖关系,自动为我们的项目抓取那些需要的第三方库。

    运行 swift build 命令安装依赖,可以看到swift build 在替我们把各种项目的依赖关系处理了一遍;

    从输出可以看到,我们复制出来的这个项目的依赖项目,又依赖了其他的项目,形成了一个依赖链条。

    当 swift build 命令运行完成自后,我们会发现项目的根目录中多了一个 Packages 目录,这个目录里面存放了我们抓取下来的依赖项目:

     

Swift 开源 Linux Ubuntu Install的更多相关文章

  1. Linux(Ubuntu)安装Swift和Swiftlint

    很多时候iOS开发完毕需要接入CI中,而很多CI是基于Linux的,需要在Linux平台安装Swift和Swiftlint,下面就是针对这两个软件的安装步骤. Swift安装 环境 系统:Ubuntu ...

  2. 开源播放器 ijkplayer (五) :Linux/Ubuntu 下编译ijkplayer

    一.安装Git与yasm sudo apt-get install git sudo apt-get install yasm 二.下载和配置 SDK.NDK SDK一般开发时肯定都有的,NDK一般是 ...

  3. Install .NET Core Runtime on Linux Ubuntu 16.04 x64

    原文链接https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-current nstall ...

  4. Arch Linux 安装博通 BCM4360 驱动(Arch Linux, Ubuntu, Debian, Fedora...)

    BCM4360 在2010年9月,博通完全开源的硬件驱动[1].该驱动程序 brcm80211已被列入到自2.6.37之后的内核中.随着2.6.39发布,这些驱动程序已被重新命名为 brcmsmac和 ...

  5. Linux(Ubuntu)下MySQL的安装与配置

    转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...

  6. swift开源项目精选

    Swift 开源项目精选-v1.0 2016-03-07 22:11 542人阅读 评论(0) 收藏 举报  分类: iOS(55)   Swift(4)    目录(?)[+]   转自 http: ...

  7. 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台

    最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...

  8. windows远程连接Linux(Ubuntu)的方法

    需要做的工作: 1.在Linux(Ubuntu)端安装.设置好SSH 2.下载putty,并通过putty的SSH连接登录Linux 一 .如何在Linux(Ubuntu)端安装.设置好SSH,获取I ...

  9. 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, ...

随机推荐

  1. Android 架构 4.总结

    以下是Keegan小钢大神原创博客: Android项目重构之路:架构篇Android项目重构之路:界面篇Android项目重构之路:实现篇 看了这几篇文章,以及下面的评论,总结一下,以便以后拓展: ...

  2. python函数中的关键字参数

    关键字参数: 就是在形式参数中必须要提供”传递参数名=传递参数值” 位置参数:  仅仅只有参数名 特点:1.位置参数只能出现在关键字参数之前,不管是在行参还是实参中. 2.关键字参数在调用时(实参)中 ...

  3. Ghost下的gho镜像分区工具

    直接gho镜像还原,有fat32和ntfs 链接: https://pan.baidu.com/s/1dGl6v65 密码: tjuz

  4. Java 和 数据库两种方式进行加锁

    java方式: publicstatic synchronized int generate(StringtableName){ Stringsql = "select value from ...

  5. Oracle中读取数据一些原理研究

    文章很多摘录了 http://blog.163.com/liaoxiangui@126/blog/static/7956964020131069843572/ 同时基于这篇文章的基础上,补充一些学习要 ...

  6. Coherence代理的负载均衡

    Coherence在extend模式下,proxy的负载均衡机制官方解释是 Extend client connections are load balanced across proxy servi ...

  7. JVM Object Query Language (OQL) 查询语言

    Object Query Language (OQL) OQL is SQL-like query language to query Java heap. OQL allows to filter/ ...

  8. 如何用路由器改成WiFi Pineapple系统镜像网络流量

    本文主要介绍利用自己现有的设备,如何制作和使用WiFi Pineapple镜像网络流量,利用DWall模块分析用户数据,然后根据自己的需求,给DWall加入了日志记录功能.最后介绍了如何防范wifi ...

  9. IE漏洞调试之CVE-2013-3893

    前言 Windows平台的漏洞挖掘和安全研究中,IE始终是绕不开的话题.IE漏洞就跟adobe系列一样经典,是学习exploit.shellcode的绝佳途径. 在IE漏洞中,UAF即Use-Afte ...

  10. [Python爬虫] 之二十一:Selenium +phantomjs 利用 pyquery抓取36氪网站数据

    一.介绍 本例子用Selenium +phantomjs爬取36氪网站(http://36kr.com/search/articles/电视?page=1)的资讯信息,输入给定关键字抓取资讯信息. 给 ...