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. Asp.Net MVC part45 过滤器、模板页

    过滤器 使用方式自定义类继承自相应的类或接口,重写方法,作为特性使用在控制器类中重写方法 特性方式的使用注意:如果继承自接口需要让类实现FilterAttribute,才可以作为特性使用使用方式1:作 ...

  2. 微信开发之自定义菜单--weixin-java-tools

    一.前言 平时在开发微信的过程中,肯定会设计到微信的相关菜单的使用,这次就和大家介绍下如何使用weixin-java-tools来管理菜单 二.自定义菜单分类 1.click:点击推事件用户点击cli ...

  3. Virtualbox环境中安装Oracle 11gr2 RAC(ASM)

    系统Oracle Linux 6.5,Oracle 11.2.0.1 终于开始安装ASM和RAC的行程了.开始前需要想清楚的几个事情: 如何规划网络配置(配置多网卡,实现连通性,规划内外网,eth0, ...

  4. iOS:扩展UIColor,支持十六进制颜色设置

    来自转载:http://my.oschina.net/leejan97/blog/307491 摘要: 可以直接使用十六进制设置控件的颜色,而不必通过除以255.0进行转换 #define UICol ...

  5. 用友u8数据库表结构

    用友数据库表名参照表1 Accessaries 成套件表2 AccInformation 帐套参数表3 AdjustPVouch4 AdjustPVouchs5 Ap_AlarmSet 单位报警分类设 ...

  6. Linux C 面试题总结

    1.进程和线程的区别,及优劣性比较 进程和线程的主要差别在于它们是不同的操作系统资源管理方式.进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路 ...

  7. Less资源汇总

    GUI编译工具 为方便起见,建议初学者使用GUI编译工具来编译.less文件,以下是一些可选GUI编译工具: koala(Win/Mac/Linux) 国人开发的LESSCSS/SASS编译工具.下载 ...

  8. Oracle OS认证 口令文件 密码丢失处理

    Oracle OS认证 口令文件 密码丢失处理 分类: Oracle Basic Knowledge2009-10-19 14:24 5031人阅读 评论(9) 收藏 举报 oracleos数据库sq ...

  9. 删除Kafka中topic

    步骤: 1.编辑Kafka启动时加载的配置文件server.properties,添加一行:delete.topic.enable=true 2.重启Zookeeper和Kafka 3.执行: ./b ...

  10. Android使用sqlliteOpenhelper更改数据库的存储路径放到SD卡上

    假设使用默认的系统管理,默认放在包以下.比較省心.并且在卸载app后不会造成数据残留.可是这样也有一个问题.比方我做一个背单词的软件,那么当用户卸载掉这个app时,他辛辛苦苦下载的单词库也没了... ...