一、安装swift 3.0

1. 下载

https://swift.org/download/

找到swift-3.0 ubuntu 15.10版本下载:

https://swift.org/builds/swift-3.0-preview-1/ubuntu1510/swift-3.0-preview-1/swift-3.0-preview-1-ubuntu15.10.tar.gz

2. 解压文件,然后移动改名到/opt

$ tar zvxf swift-3.0-preview--ubuntu15..tar.gz
$ sudo mv swift-3.0-preview--ubuntu15. /opt/swift-3.0

3. 在启动配置文件中加入PATH变量,我这里加入~/.zshrc结尾

export PATH=/opt/swift-3.0/usr/bin:"${PATH}"

4. 安装 glang

$ sudo apt-get --assume-yes install clang

5. 验证

$ swift --version
Swift version 3.0 (swift-3.0-PREVIEW-)
Target: x86_64-unknown-linux-gnu
$ swiftc --version
Swift version 3.0 (swift-3.0-PREVIEW-)
Target: x86_64-unknown-linux-gnu
$ swift-build --version
Swift Package Manager – Swift 3.0
$

二、配置JetBrains CLion

注:CLion是收费软件。

https://www.jetbrains.com/clion/download/#section=linux-version

下载位置:

https://download.jetbrains.com/cpp/CLion-2016.1.3.tar.gz

如果下载没进度,可以尝试用百度云离线下载,将http代替https。

然后同前面一样,将CLion解压移动到/opt下:

$ tar zvxf CLion-2016.1..tar.gz
$ sudo mv cLion-2016.1. /opt/
$ cd /opt/cLion-2016.1./bin
$ ./clion.sh

按照提示操作,注意到安装插件时候安装Swift插件

启动CLion, File -> Settings

1) 在 Editor / General / Apperance 右侧 勾选 Show line number

2) 在 Build, Execution, Deployment / Swift 右侧 输入SDK路径:  /opt/swift-3.0  ,勾选Use Swift debugger

3) CLion在LLDB调试时候需要liblldb.so.3,所以做个软连接

$ cd /opt/swift-3.0/usr/lib
$ ln -s liblldb.so liblldb.so.

创建一个HelloSwift项目

在CLion中,File -> New Project,输入项目名: HelloSwift

删除左侧项目列表的 main.cpp

然后右键HelloSwift -> New -> Swift File,名为 Package.swift

然后右键HelloSwift -> New -> Directory,目录名为 Sources

右键Sources -> New -> Swift File, 名为 main.swift

右键Sources -> New -> Swift Class, 名为 Utility.swift

双击CMakeLists.txt,改成下面:

cmake_minimum_required(VERSION 3.5)
project(HelloSwift) add_custom_target(
COMMAND /opt/swift-3.0/usr/bin/swift build
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
SOURCES
Package.swift
Sources/main.swift
Sources/Utility.swift
)

Utility.swift代码:

import Foundation

class Utility {
static func factorial(_ n: Int) -> Int {
if n <= 1 { return n }
return n * factorial(n - 1)
} }

main.swift代码:

import Foundation
import Glibc let number = 4
print("\(number)! is equal to \(Utility.factorial(number))")

点击CLion右上角的运行按钮,Edit Configurations,Target选择COMMAND,运行,是它编译出HelloSwift/.build/debug/HelloSwift。

然后再次点它,在Edit Configurations中,将Executable:选择HelloSwift/.build/debug/HelloSwift文件:

现在就可点右上角的调试按钮(BUG虫图标),进行调试了:

文档:

The Swift Programming Language (ePub)

epub阅读器:

$ sudo apt-get install Calibre

Swift 3.0 on Ubuntu 15.10的更多相关文章

  1. ubuntu 15.10 安装swift开发环境 2016/4/17

    ubuntu 15.10 64位 下载地址 https://swift.org/download/#using-downloads 1.首先在ubuntu终端上 (ctl+alt+t打开) 下载cla ...

  2. Ubuntu 15.10搭建IPSec L2TP服务器

    以下步骤完全使用于Ubuntu 14.04版本 首先安装以下所需包 sudo apt-get install openswan xl2tpd ppp lsof!注意!Ubuntu 15.10会提示无法 ...

  3. 安装Ubuntu 15.10后要做的事

    Ubuntu 15.10发布了,带来了很多新特性,同样也依然带着很多不习惯的东西,所以装完系统后还要进行一系列的优化. 1.删除libreoffice libreoffice虽然是开源的,但是Java ...

  4. 【转】安装Ubuntu 15.10后要做的事

    Ubuntu 15.10发布了,带来了很多新特性,同样也依然带着很多不习惯的东西,所以装完系统后还要进行一系列的优化. 1.删除libreoffice libreoffice虽然是开源的,但是Java ...

  5. Ubuntu 15.10 下Tachyon安装

    1 系统环境 Ubuntu 15.10, Java 1.7, Hadoop 2.6.0 HA, Spark-1.4.0 三台机器 spark-1423-0001: Master, Worker spa ...

  6. Ubuntu 15.10 下Redis Cluster使用

    1 Redis Standalone安装 可以参考这篇博文:http://www.cnblogs.com/_popc/p/3684835.html 2 Redis Cluster安装 2.1 环境介绍 ...

  7. 转载:安装Ubuntu 15.10后要做的事

    转载:安装Ubuntu 15.10后要做的事 原文转载于:http://blog.csdn.net/skykingf/article/details/45267517 Ubuntu 15.10发布了, ...

  8. UBUNTU 15.10 CAFFE安装教程(测试可用)

    转帖:https://github.com/BVLC/caffe/wiki/Ubuntu-15.10-Installation-Guide Ubuntu 15.10 have been release ...

  9. Ubuntu 15.10 x64 安装 Android SDK

    操作系统:Ubuntu 15.10 x64 目标:安装 Android SDK 本文最后更新时间:2015-11-3 安装32位库文件 2013年9月的iPhone 5s是第一款64位手机,而Andr ...

随机推荐

  1. python基础——函数参数

    课上老师已经讲过函数(func)的参数(args)传递. 之前学习了根据位置传递对应的参数,下面会介绍其他参数传递方式. 之前的位置传参: def f(a,b,c): return a+b+c pri ...

  2. 数据性能调校——查看最耗资源的各种SQL

    从计划高速缓存中清除查询计划 DBCC FREEPROCCACHE 清除缓存中的过程 DBCC DROPCLEANBUFFERS清除内存中的数据 SELECT DB_ID('你的数据库名') tota ...

  3. WebService中WSDL和WADL(转)

    转自https://blog.csdn.net/liuxiao723846/article/details/51611183#commentBox 自己加了修改批注方便自己理解. 1.Java开发We ...

  4. boost之时间timer

    C++一直缺乏对时间和日期的处理能力,一般借助于C的struct tm和time():timer包含三个类其中timer,progress_timer是计时器类,进度指示类是progress_disp ...

  5. checked 和 unchecked 基元类型操作

    对基元类型执行的许多算术运算都可能造成溢出: Byte b = ; b = (Byte) (b + ); // b 现在包含 44(或者十六进制值 2C) 重要提示:执行上述算术运算时,第一步要求所有 ...

  6. Python 1 的数据类型

    Python3 中有六个标准的数据类型: Number(数字)String(字符串)List(列表)Tuple(元组)Sets(集合)Dictionary(字典) 1.Number(数字) pytho ...

  7. HBase基本知识介绍及典型案例分析

    本次分享的内容主要分为以下五点: HBase基本知识: HBase读写流程: RowKey设计要点: HBase生态介绍: HBase典型案例分析. 首先我们简单介绍一下 HBase 是什么. HBa ...

  8. 转:USB枚举

  9. 嵌入式boa服务器移植

    开发板:EDUKIT-III实验箱,S3C2410+LINUX2.4,实验箱随箱光盘提供的Zimage,nor flash启动. 主机:ubnutn10.4LTS,arm-linux-gcc 2.95 ...

  10. VoLTE的前世今生...说清楚VoIP、VoLTE、CSFB、VoWiFi、SIP、IMS那些事...

    转:https://mp.weixin.qq.com/s?__biz=MzA3MTA3OTIwMw==&mid=401344844&idx=1&sn=497b351f524af ...