2016-04-04 17:50:04 testcs_dn 阅读数 5616

Swift的开发环境可以使用苹果平台(OS X)或Linux系统(Ubuntu),这里介绍在我在Ubuntu 14 server下安装Swift运行环境的过程

1、安装所需的依赖项

$ sudo apt-get install clang libicu-dev

我是先安装的clang,中间会提示需要下载多少M的文件,安装完成后会占用多少磁盘空间,是否继续?

如下面加粗的部分所示,输入字母y,回车

# sudo apt-get install clang
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  binfmt-support clang-3.4 libclang-common-3.4-dev libclang1-3.4 libffi-dev
  libllvm3.4 libobjc-4.8-dev libobjc4 libtinfo-dev llvm-3.4 llvm-3.4-dev
  llvm-3.4-runtime
Suggested packages:
  llvm-3.4-doc
The following NEW packages will be installed:
  binfmt-support clang clang-3.4 libclang-common-3.4-dev libclang1-3.4
  libffi-dev libllvm3.4 libobjc-4.8-dev libobjc4 libtinfo-dev llvm-3.4
  llvm-3.4-dev llvm-3.4-runtime
0 upgraded, 13 newly installed, 0 to remove and 10 not upgraded.
Need to get 31.3 MB of archives.
After this operation, 156 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://hk.archive.ubuntu.com/ubuntu/ trusty/main libllvm3.4 amd64 1:3.4-1ubuntu3 [6,540 kB]
Get:2 http://hk.archive.ubuntu.com/ubuntu/ trusty-updates/main libobjc4 amd64 4.8.4-2ubuntu1~14.04.1 [111 kB]
Get:3 http://hk.archive.ubuntu.com/ubuntu/ trusty-updates/main libobjc-4.8-dev amd64 4.8.4-2ubuntu1~14.04.1 [378 kB]
Get:4 http://hk.archive.ubuntu.com/ubuntu/ trusty/universe libclang1-3.4 amd64 1:3.4-1ubuntu3 [3,534 kB]
Get:5 http://hk.archive.ubuntu.com/ubuntu/ trusty/main binfmt-support amd64 2.1.4-1 [49.0 kB]
Get:6 http://hk.archive.ubuntu.com/ubuntu/ trusty/universe libclang-common-3.4-dev amd64 1:3.4-1ubuntu3 [667 kB]
Get:7 http://hk.archive.ubuntu.com/ubuntu/ trusty/universe clang-3.4 amd64 1:3.4-1ubuntu3 [8,922 kB]
Get:8 http://hk.archive.ubuntu.com/ubuntu/ trusty/universe clang amd64 1:3.4-0ubuntu1 [2,476 B]
Get:9 http://hk.archive.ubuntu.com/ubuntu/ trusty/main libtinfo-dev amd64 5.9+20140118-1ubuntu1 [76.3 kB]
Get:10 http://hk.archive.ubuntu.com/ubuntu/ trusty/main llvm-3.4-runtime amd64 1:3.4-1ubuntu3 [36.2 kB]
Get:11 http://hk.archive.ubuntu.com/ubuntu/ trusty/main llvm-3.4 amd64 1:3.4-1ubuntu3 [1,078 kB]
Get:12 http://hk.archive.ubuntu.com/ubuntu/ trusty-updates/main libffi-dev amd64 3.1~rc1+r3.0.13-12ubuntu0.1 [99.8 kB]
Get:13 http://hk.archive.ubuntu.com/ubuntu/ trusty/main llvm-3.4-dev amd64 1:3.4-1ubuntu3 [9,801 kB]
Fetched 31.3 MB in 1min 55s (272 kB/s)                                         
Selecting previously unselected package libllvm3.4:amd64.
(Reading database ... 78700 files and directories currently installed.)
Preparing to unpack .../libllvm3.4_1%3a3.4-1ubuntu3_amd64.deb ...
Unpacking libllvm3.4:amd64 (1:3.4-1ubuntu3) ...
Selecting previously unselected package libobjc4:amd64.
Preparing to unpack .../libobjc4_4.8.4-2ubuntu1~14.04.1_amd64.deb ...
Unpacking libobjc4:amd64 (4.8.4-2ubuntu1~14.04.1) ...
Selecting previously unselected package libobjc-4.8-dev:amd64.
Preparing to unpack .../libobjc-4.8-dev_4.8.4-2ubuntu1~14.04.1_amd64.deb ...
Unpacking libobjc-4.8-dev:amd64 (4.8.4-2ubuntu1~14.04.1) ...
Selecting previously unselected package libclang1-3.4:amd64.
Preparing to unpack .../libclang1-3.4_1%3a3.4-1ubuntu3_amd64.deb ...
Unpacking libclang1-3.4:amd64 (1:3.4-1ubuntu3) ...
Selecting previously unselected package binfmt-support.
Preparing to unpack .../binfmt-support_2.1.4-1_amd64.deb ...
Unpacking binfmt-support (2.1.4-1) ...
Selecting previously unselected package libclang-common-3.4-dev.
Preparing to unpack .../libclang-common-3.4-dev_1%3a3.4-1ubuntu3_amd64.deb ...
Unpacking libclang-common-3.4-dev (1:3.4-1ubuntu3) ...
Selecting previously unselected package clang-3.4.
Preparing to unpack .../clang-3.4_1%3a3.4-1ubuntu3_amd64.deb ...
Unpacking clang-3.4 (1:3.4-1ubuntu3) ...
Selecting previously unselected package clang.
Preparing to unpack .../clang_1%3a3.4-0ubuntu1_amd64.deb ...
Unpacking clang (1:3.4-0ubuntu1) ...
Selecting previously unselected package libtinfo-dev:amd64.
Preparing to unpack .../libtinfo-dev_5.9+20140118-1ubuntu1_amd64.deb ...
Unpacking libtinfo-dev:amd64 (5.9+20140118-1ubuntu1) ...
Selecting previously unselected package llvm-3.4-runtime.
Preparing to unpack .../llvm-3.4-runtime_1%3a3.4-1ubuntu3_amd64.deb ...
Unpacking llvm-3.4-runtime (1:3.4-1ubuntu3) ...
Selecting previously unselected package llvm-3.4.
Preparing to unpack .../llvm-3.4_1%3a3.4-1ubuntu3_amd64.deb ...
Unpacking llvm-3.4 (1:3.4-1ubuntu3) ...
Selecting previously unselected package libffi-dev:amd64.
Preparing to unpack .../libffi-dev_3.1~rc1+r3.0.13-12ubuntu0.1_amd64.deb ...
Unpacking libffi-dev:amd64 (3.1~rc1+r3.0.13-12ubuntu0.1) ...
Selecting previously unselected package llvm-3.4-dev.
Preparing to unpack .../llvm-3.4-dev_1%3a3.4-1ubuntu3_amd64.deb ...
Unpacking llvm-3.4-dev (1:3.4-1ubuntu3) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Processing triggers for ureadahead (0.100.0-16) ...
ureadahead will be reprofiled on next reboot
Processing triggers for install-info (5.2.0.dfsg.1-2) ...
Setting up libllvm3.4:amd64 (1:3.4-1ubuntu3) ...
Setting up libobjc4:amd64 (4.8.4-2ubuntu1~14.04.1) ...
Setting up libobjc-4.8-dev:amd64 (4.8.4-2ubuntu1~14.04.1) ...
Setting up libclang1-3.4:amd64 (1:3.4-1ubuntu3) ...
Setting up binfmt-support (2.1.4-1) ...
binfmt-support start/running
Setting up libclang-common-3.4-dev (1:3.4-1ubuntu3) ...
Setting up clang-3.4 (1:3.4-1ubuntu3) ...
Setting up clang (1:3.4-0ubuntu1) ...
Setting up libtinfo-dev:amd64 (5.9+20140118-1ubuntu1) ...
Setting up libffi-dev:amd64 (3.1~rc1+r3.0.13-12ubuntu0.1) ...
Processing triggers for ureadahead (0.100.0-16) ...
Setting up llvm-3.4-runtime (1:3.4-1ubuntu3) ...
Setting up llvm-3.4 (1:3.4-1ubuntu3) ...
Setting up llvm-3.4-dev (1:3.4-1ubuntu3) ...
Processing triggers for libc-bin (2.19-0ubuntu6.7) ...
接着安装libicu-dev

# sudo apt-get install clang libicu-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
clang is already the newest version.
The following extra packages will be installed:
  icu-devtools libicu52
Suggested packages:
  icu-doc
The following NEW packages will be installed:
  icu-devtools libicu-dev libicu52
0 upgraded, 3 newly installed, 0 to remove and 10 not upgraded.
Need to get 14.5 MB of archives.
After this operation, 65.5 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://hk.archive.ubuntu.com/ubuntu/ trusty-updates/main libicu52 amd64 52.1-3ubuntu0.4 [6,752 kB]
Get:2 http://hk.archive.ubuntu.com/ubuntu/ trusty-updates/main icu-devtools amd64 52.1-3ubuntu0.4 [163 kB]
Get:3 http://hk.archive.ubuntu.com/ubuntu/ trusty-updates/main libicu-dev amd64 52.1-3ubuntu0.4 [7,588 kB]
Fetched 14.5 MB in 2min 28s (97.7 kB/s)                                        
Selecting previously unselected package libicu52:amd64.
(Reading database ... 79807 files and directories currently installed.)
Preparing to unpack .../libicu52_52.1-3ubuntu0.4_amd64.deb ...
Unpacking libicu52:amd64 (52.1-3ubuntu0.4) ...
Selecting previously unselected package icu-devtools.
Preparing to unpack .../icu-devtools_52.1-3ubuntu0.4_amd64.deb ...
Unpacking icu-devtools (52.1-3ubuntu0.4) ...
Selecting previously unselected package libicu-dev:amd64.
Preparing to unpack .../libicu-dev_52.1-3ubuntu0.4_amd64.deb ...
Unpacking libicu-dev:amd64 (52.1-3ubuntu0.4) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Setting up libicu52:amd64 (52.1-3ubuntu0.4) ...
Setting up icu-devtools (52.1-3ubuntu0.4) ...
Setting up libicu-dev:amd64 (52.1-3ubuntu0.4) ...
Processing triggers for libc-bin (2.19-0ubuntu6.7) ...
2、下载最新的二进制版本

# wget https://swift.org/builds/swift-2.2-release/ubuntu1404/swift-2.2-RELEASE/swift-2.2-RELEASE-ubuntu14.04.tar.gz
swift- <版本> - <平台> .tar.gz文件是工具链本身。所述的.sig文件是数字签名。3、如果您是首次下载Swift包,可导入PGP密钥到你的钥匙圈(可选,主要用于验证包的正确性)
使用以下命令:

$ gpg --keyserver hkp://pool.sks-keyservers.net \
      --recv-keys \
      '7463 A81A 4B2E EA1B 551F  FBCF D441 C977 412B 37AD' \
      '1BE1 E29A 084C B305 F397  D62A 9F59 7F4D 21A5 6D5F'
或者

$ wget -q -O - https://swift.org/keys/all-keys.asc | gpg --import -
如果你之前已导入过钥匙,跳过这一步
# wget -q -O - https://swift.org/keys/all-keys.asc | gpg --import -
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key 412B37AD: public key "Swift Automatic Signing Key #1 <swift-infrastructure@swift.org>" imported
gpg: key 21A56D5F: public key "Swift 2.2 Release Signing Key <swift-infrastructure@swift.org>" imported
gpg: Total number processed: 2
gpg:               imported: 2  (RSA: 2)
4、验证PGP签名(可选)

Swift开源项目为Linux 下的.tar.gz文件使用GnuPG生成一个签名密匙文件,大力鼓励每个人都在使用软件之前验证签名,以确定文件的完整性,真实性,安全性。

首先刷新证书缓存

# gpg --keyserver hkp://pool.sks-keyservers.net --refresh-keys Swift
gpg: refreshing 2 keys from hkp://pool.sks-keyservers.net
gpg: requesting key 412B37AD from hkp server pool.sks-keyservers.net
gpg: requesting key 21A56D5F from hkp server pool.sks-keyservers.net
gpg: key 412B37AD: "Swift Automatic Signing Key #1 <swift-infrastructure@swift.org>" not changed
gpg: key 21A56D5F: "Swift 2.2 Release Signing Key <swift-infrastructure@swift.org>" 1 new signature
gpg: Total number processed: 2
gpg:              unchanged: 1
gpg:         new signatures: 1
gpg: no ultimately trusted keys found
然后,使用签名文件以验证存档是否完好

# gpg --verify swift-2.2-RELEASE-ubuntu14.04.tar.gz.sig
gpg: Signature made Tuesday, March 22, 2016 AM02:15:34 CST using RSA key ID 21A56D5F
gpg: Good signature from "Swift 2.2 Release Signing Key <swift-infrastructure@swift.org>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 1BE1 E29A 084C B305 F397  D62A 9F59 7F4D 21A5 6D5F
如果GPG无法验证,因为你没有公钥(GPG:无法检查签名:不公开密钥),请按照下面的Active签名密钥的指示键导入到你的钥匙圈。

您可能会看到一个警告:

gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
这个密钥没有被证明是可信的签名,没有任何迹象表明签名属于所有者

5、解压文件用下面的命令

# tar xzf swift-2.2-RELEASE-ubuntu14.04.tar.gz
这会创建USR /目录在存档位置的目录下。
例如:/home/aven/swift-2.2-RELEASE-ubuntu14.04/usr

6、添加Swift到你的Path环境变量:

# export PATH=/home/aven/swift-2.2-RELEASE-ubuntu14.04/usr/bin:"${PATH}"
现在,您可以执行快捷命令来运行交互式解释器(REPL)或建立Swift项目。
到这里就算安装完成了,你可以切换到任意目录下,输入swift,回车,看看效果吧!

上图:看最下面,你最熟悉的……,我就不说它是什么了大笑


注意这里使用export设置的环境变量只是临时的,重新打开shell窗口、重新登录、重新启动之后等都会失效,

要设置为永久的请参考:Ubuntu修改配置环境变量


2018-02-01 11:34:08 u010429286 阅读数 2658

翻译自:How to Install Swift and Vapor on Ubuntu 16.04

介绍

Swift是Apple开发的一种编程语言,特点是快,安全和现代化,它有一个支持语言的庞大社区。Swift主要用于开发iOS和Mac OS应用程序,但从Swift 3开始,您也可以将其用于服务器端应用程序开发。

Vapor是一个流行的服务器端Swift Web框架,和Swift一样,Vapor也有快速和现代化的特点,它支持许多在其他编程语言的Web框架中有的功能。

在本指南中,您将在Ubuntu 16.04上安装Swift和Vapor,然后使用Vapor的模板创建一个简单的Web应用程序来测试您的设置。

准备工作

学习本教程,你需要准备以下内容:

​ 1.一个非root用户有sudo权限的Ubuntu 16.04服务器。可以通过学习如何使用我们的初始化服务器设置指南进行设置。

​ 2.服务器需要安装Git。Git应该已经安装在Ubuntu 16.04上,但是如果没有的话,运行sudo apt-get install git进行安装

第一步-安装Swift

要构建和运行Vapor Web应用程序,首先需要安装Swift。

首先,确保您的系统上有最新的软件包列表:

$ sudo apt-get update

然后安装Swift的必需的软件包,其中包括clang和一些Python 2.7组件

$ sudo apt-get install clang libicu-dev libpython2.7

之后,去下载最新的Swift二进制文件,你可以从Swift下载页面手动下载(下载地址),或通过wget:

$ wget https://swift.org/builds/swift-4.0-release/ubuntu1604/swift-4.0-RELEASE/swift-4.0-RELEASE-ubuntu16.04.tar.gz

接下来要验证下载没有被损坏或被篡改,首先将Swift的PGP密钥导入您的密钥环,密钥将用于验证签名文件

$ gpg --keyserver hkp://pool.sks-keyservers.net \
      --recv-keys \
      '7463 A81A 4B2E EA1B 551F  FBCF D441 C977 412B 37AD' \
      '1BE1 E29A 084C B305 F397  D62A 9F59 7F4D 21A5 6D5F' \
      'A3BA FD35 56A5 9079 C068  94BD 63BC 1CFE 91D3 06C6' \
      '5E4D F843 FB06 5D7F 7E24  FBA2 EF54 30F0 71E1 B235'

输出结果:

...
gpg: key 412B37AD: public key "Swift Automatic Signing Key #1 <swift-infrastructure@swift.org>" imported
gpg: key 21A56D5F: public key "Swift 2.2 Release Signing Key <swift-infrastructure@swift.org>" imported
gpg: key 91D306C6: public key "Swift 3.x Release Signing Key <swift-infrastructure@swift.org>" imported
gpg: key 71E1B235: public key "Swift 4.x Release Signing Key <swift-infrastructure@swift.org>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 4
gpg:               imported: 4  (RSA: 4)

密钥导入之后,去下载对应Swift版本的签名文件:

$ wget https://swift.org/builds/swift-4.0-release/ubuntu1604/swift-4.0-RELEASE/swift-4.0-RELEASE-ubuntu16.04.tar.gz.sig

要验证此签名文件:

$ gpg --verify swift-4.0-RELEASE-ubuntu16.04.tar.gz.sig

验证结果:

gpg: assuming signed data in `swift-4.0-RELEASE-ubuntu16.04.tar.gz'
gpg: Signature made Wed 20 Sep 2017 01:13:38 AM UTC using RSA key ID 71E1B235
gpg: Good signature from "Swift 4.x Release Signing Key <swift-infrastructure@swift.org>"
Primary key fingerprint: 5E4D F843 FB06 5D7F 7E24  FBA2 EF54 30F0 71E1 B235

您可能会看到一个像这样的警告:

gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.

这意味着你导入的Swift key还没有被信任,或者由你或者你在你的钥匙圈中安装的其他key明确的。这样的警告您可以忽略,但是,如果出现一些不同的错误(error),则应重新下载Swift二进制文件。

安装了密钥和签名文件,我们就可以安装Swift。 执行以下命令来提取您之前下载的二进制文件:

$ tar xzf swift-4.0-RELEASE-ubuntu16.04.tar.gz

然后将Swift工具链添加到环境变量中,以便运行swift命令

$ export PATH=swift-4.0-RELEASE-ubuntu16.04/usr/bin:"${PATH}"

这个命令只会将swift命令添加到当前shell会话路径中,如果要确保它在以后的会话中自动添加,要将其添加到.bashrc文件中。

打开 .bashrc 文件:

$ nano ~/.bashrc

在文件末尾添加:

$ export PATH=swift-4.0-RELEASE-ubuntu16.04/usr/bin:"${PATH}"

保存并退出。

验证swift是否正确安装,运行一下swift命令即可:

$ swift

看到的是Welcome to …,这表明swift已经正确安装

Welcome to Swift version 4.0 (swift-4.0-RELEASE). Type :help for assistance.
  1>  

可以进一步去检查swift的一些简单的功能, 输入1到5之间的所有整数求和的程序(在每行之间以回车隔开):

var x = 0
for i in 1...5 { 
    x += i 
} 
x

REPL将计算结果:

$R0: Int = 15

使用Ctrl+D退出Swift REPL。接下来我们准备安装Vapor

第二步 — 安装Vapor

要安装Vapor,您将从Vapor开发者处下载并执行脚本,将Vapor的官方软件包存储库添加到您的服务器的软件包列表中,然后你将使用apt来安装最新版本的Vapor。

执行从别的地方下载的脚本而不先检查它们通常不是一个好的安全措施。首先,使用带有-o开关的curl命令将安装脚本下载到服务器,以指定本地文件名。

$ curl -sL apt.vapor.sh -o apt.vapor.sh

使用less命令来检查这个脚本:

$ less apt.vapor.sh

检查了安装脚本的内容之后,执行脚本添加存储库

$ bash ./apt.vapor.sh

这个时候,系统会提示您输入sudo的密码。输入密码之后,一旦脚本运行完成,您可以安装vapor包及其依赖。

$ sudo apt-get install vapor

您可以通过使用Vapor开发人员提供的其他脚本来验证Vapor是否已成功安装。同样地,下载脚本,检查它,然后执行它

$ curl -sL check.vapor.sh -o check.vapor.sh
$ less check.vapor.sh
$ bash ./check.vapor.sh

如果你看到下面这个结果表明Vapor已经安装成功

✅ Compatible with Vapor 2

现在Swift和Vapor都已经安装,就可以创建你的第一个Vapor应用程序啦。

第三步-创建Vapor应用程序

要创建我们的应用程序,这里我们将使用Vapor默认提供的模板,我们可以通过Vapor提供的Web模板创建面向用户的Web应用程序。

这个模板是基于Git,并且已经使用你的名字和电子邮件地址来配置好了,如果你没有Git或者没有配置完成,你可能会看到一个错误消息,让你配置Git。您可以忽略此消息,或者执行这些命令来提供您的详细信息:

$ git config --global user.email "your_email@example.com"
$ git config --global user.name "Your Name"

要从此模板创建Web应用程序,执行以下命令

$ vapor new demo --template=web

此脚本使用你指定的名称在新的目录中生成一个新应用程序

执行结果:

Cloning Template [Done]
Updating Package Name [Done]
Initializing git repository [Done]
...
               _       __    ___   ___   ___
              \ \  /  / /\  | |_) / / \ | |_)
               \_\/  /_/--\ |_|   \_\_/ |_| \
                 a web framework for Swift

              Project "demo" has been created.
       Type `cd demo` to enter the project directory.
   Use `vapor cloud deploy` to host your project for free!
                           Enjoy!

如果你想创建一个API而不是一个完整的Web应用程序,你可以使用Vapor新demo提供的api模板与--template = api, 可以看看网页模板api模板的源代码,看看它们是如何工作的,接下来我们运行刚刚创建的应用程序,并实际去看一看。

第四步-编译并运行Vapor应用程序

Swift应用程序必须要编译,和Python或Ruby应用程序不一样,也就是说在你运行你的Vapor应用程序之前,你必须运行一个构建过程。

首先,切换到新创建的demo文件夹:

$ cd demo

然后执行 vapor build 命令编译vapor应用程序

$ vapor build

第一次构建应用程序时,程序将获取一些依赖关系,它会缓存这些依赖关系并在之后构建的过程中不再获取,以便构建过程更快。

构建过程完成后,使用以下命令运行应用程序

$ vapor run serve

服务器将启动,输出显示:

Running demo ...
...
Starting server on 0.0.0.0:8080

在浏览器中访问http://your_server_ip:8080,查看您正在运行的Vapor应用程序的欢迎页面。

总结

Swift社区正在稳步发展,并且有很多方法可以参与进来,尽管Swift主要用于构建原生iOS和MacOS应用程序,但Linux平台上的Swift正在兴起,您可以通过阅读Apple的免费电子书The Swift Programming Language来了解更多有关Swift的信息。 要了解有关Vapor的更多信息,请查看他们的文档

2017-08-15 15:21:00 weixin_34306676 阅读数 0

最近苹果开源了 Swift 编程语言,这意味着任何人都将可以在任何系统上使用 Swift 编程语言。现在,苹果首先将 Swift 带到了 Ubuntu 平台,下面我将向大家介绍 Ubuntu 如何安装 Swift。

什么是Swift?

Swift 是苹果推出的最新编程语言,其目的是为了取代 Objective-C 成为构建 Mac OS X 和 iOS 的应用程序的主要语言。Swift 非常简洁易学,而且与其它流行的编程语言有类似的语法,容易上手。

然而,Swift 语言仅适用于苹果设备,所开发的程序不能在 Windows、Linux 或其它系统上运行。随着 Swift 日益普及,越来越多的开发人员都希望苹果将 Swift 开源,至少要让其能够支持更多的平台。苹果也难得的听取了广大开发者的声音,最终将 Swift 进行了开源。从商业角度来考虑的话,苹果将 Swift 开源是一个非常好的举措,这至少可以方便更多的开发人员创建 Mac OS X 和 iOS 的应用。

如果你有兴趣学习 Swift 编程语言,可以于任何时间在 Linux 进行安装。目前苹果只发布了针对 Ubuntu 14.04 和 Ubuntu 15.10 的安装程序,相信苹果会很快更新其它平台和 Linux 平台的通用安装程序。

Ubuntu如何安装Swift

1.首先,我们需要先到 Swift 下载页面去下载最新的 Swift 程序,然后将其解压到一个存放路径。

2.其次,我们需要安装一些 Swift 运行所需要的依赖,大家可以使用如下命令进行安装:


  1. sudo apt-get install clang libicu-dev 

3.其次,我们需要安装一些 Swift 运行所需要的依赖,大家可以使用如下命令进行安装:


  1. sudo apt-get install clang libicu-dev 

4.使用如下命令打开配置文件:


  1. gedit .profile 

5.在「最后插入一行」输入:


  1. export PATH=/path/to/usr/bin:"${PATH}" 

6.将上诉路径中的 /path/to/ 更改为第一步中 Swift 下载之后的解压路径:


  1. /home/billyfu/swift-2.2-SNAPSHOT-2015-12-31-a-ubuntu15.10/usr/bin 

7.以上步骤完成后,大家可以使用如下命令可以查看 Swift 版本:


  1. swift –version 

如果你看到正确显示版本号,那 Swift 便可以在 Ubuntu 上正常工作了!





作者:Winclient
来源:51CTO
2018-02-12 10:28:06 qq_27623521 阅读数 282

安装clang编译器

clang 编译器是苹果公司提供的 C 编译器,是 Swift 必需的一个组件

sudo apt-get install clang libicu-dev

官网下载swift4

减压后将路径添加到环境变量

 sudo gedit /etc/environment

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/aven/local/swift-4.0.3/usr/bin"

使环境变量立即执行

source /etc/environment

验证swift

终端输入

swift --version 

返回

Swift version 4.0.3 (swift-4.0.3-RELEASE)
Target: x86_64-unknown-linux-gnu

出现这个代表安装成功了.

2016-05-31 17:41:41 yilovexing 阅读数 0

1. 安装 clang 编译器

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

sudo apt-get --assume-yes install clang

或者去 Ubuntu 软件中心搜索 Clang 安装即可


PS: Geek在安装Clang的时候出现过以下问题




解决方法:

打开Ubuntu 软件中心

搜索Clang点击安装,出现一个报错,Ubuntu 软件中心报错,需要修复,点击修复,卸载旧版本Clang,从新安装即可


2.取Swift 包

去官网下载: https://swift.org/download

或者: wget 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

推荐去官网选择适合自己的Ubuntu版本下载


3.安装Swift

① 使用 tar 命令,解压下载完成的 Swift 包:

tar xvzf swift-2.2.1-RELEASE-ubuntu14.04.tar.gz


② 将 Swift 的 bin 目录写入环境变量,这样系统就可以找到我们要执行的命令了:

sudo vi /etc/environment
将路径加入到环境变量之后
:/home/setup/swift/usr/bin
立即生效
source /etc/environment

但是发现还是不行,所以我就加到用户目录下
vi ~/.bashrc
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/setup/swift/usr/bin"
source ~/.bashrc


③ 命令行,输入 swift --version 命令验证 Swift 是否安装成功。

如果安装成功,我们就可以收到类似这样的输出:



4.测试

vi 新建一个后缀为 .swift的文件
写入代码 print("Hello Word!")
:wq 保存

swift有2种执行方法

swift Hello.swift
swiftc -o Hello Hello.swift

运行结果且无报错说明成功

PS: Geek在编译的时候打开一个新的终端,会出现命令无法使用需要重新执行 source  /home/setup/.profile ,不知道什么原因造成的,由于Geek时间匆忙就写了开机启动项了,有知道什么情况的可以说下,在此拜谢!!!




参考文献:                                             

手把手教你使用 Linux 平台上的 Swift

Swift 编程语言(官方)