1

Swift是一门优秀的语言,开源以后更是火得让Golang嫉妒。现在甚至都可以搞服务端编程了(就是这个项目)。Swift也是很潮地可编译执行可解释执行,还自带REPL。特别想把它装到linux上。

下面是我在Arch linux上安装试用Swift的过程。Swift版本是2.2-dev。

安装Swift

1. AUR

如果用的是Ubuntu,苹果已经做了两个包,简单安装就好。
而我用的是archlinux,并没有官方支持。。。不过考虑到前些日子Swift连续占据Github Trending榜首,强烈怀疑已经有人把它推到AUR了。搜了下swift,果然有,我搜的时候有三个packages。其中swift-bin和swift-language-bin其实是一样的,目前后者已经合并到swift-bin。另外还有一个package是swift-language-git,带git,不用解释了。

我选择装的是swift-bin,安装很简单:

yaourt -S swift-bin

2. PGP问题

安装过程中两次出现One or more PGP signatures could not be verified!

一次是装依赖包ncurses5-compat-libs的时候。选择编辑PKGBUILD,可以在开头看到关于这个问题的说明,重点是TLDR: gpg --keyserver pgp.mit.edu --recv-keys C52048C0C0748FEE227D47A2702353E0F7E48EDB

按说明导入key就可以继续(墙内的可能需要科学上网:( ):

gpg --keyserver pgp.mit.edu --recv-keys C52048C0C0748FEE227D47A2702353E0F7E48EDB

第二次是验证swift包本身的时候,关于这个,swift官方下载页面已有说明:

If you are downloading Swift packages for the first time, import the PGP keys into your keyring

按说明执行:

wget -q -O - https://swift.org/keys/all-keys.asc | gpg --import -

安装继续。。。

Done!

Hello, world!

先写个Hello, world试用一下。

终端执行swift可以打开REPL:

也可以写成脚本:

#!/bin/env swift

print("Hello, world!")

也可以用swiftc先编译后执行:

编辑器

我用的时VIM,但是目前还没有找到一个好用的Swift语法插件。vim-swift已经两年没更新,自动缩进的issue一直也没有解决。vim.swift稍微好些,但试用了下,缩进也并不完美。YouCompleteMe也不支持Swift。总之,到目前为止,Linux上Swift的开发工具还很不完善。要日常地使用,还需要折腾些时候。

至于其他的编辑器(sublime text等等)是否支持Swift,我并没有去尝试,偷了个懒。。。
平常写Swift都是在Mac上,有Xcode足够了。

更多文章


suosuopuo
207 声望2 粉丝