don't stop believing

[Ubuntu] Swift 3 설치하기 본문

Linux/Ubuntu

[Ubuntu] Swift 3 설치하기

Tongchun 2017. 9. 13. 19:57

Ubuntu에 swift를 설치해 봅시다.

Swift 홈페이지에가서 최신 버전을 확인해 봅시다. Swift 홈페이지의 다운로드 페이지에 가면 Swift 최신 버전에 대한 Ubuntu 버전을 확인할 수 있습니다.

https://swift.org/download


현재 돌아가는 Ubuntu 버전이 16.04이므로 해당 swift 링크를 확인 합니다.

https://swift.org/builds/swift-3.1.1-release/ubuntu1604/swift-3.1.1-RELEASE/swift-3.1.1-RELEASE-ubuntu16.04.tar.gz


이제 터미널을 열고 Ubuntu에 접속해 봅니다.

ssh ngle@192.168.0.188
ngle@192.168.0.188's password:
Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.10.0-33-generic x86_64)

최초 접속할때도 Ubuntu 버전이 보이는군요.

이제 wget으로 swift파일을 다운로드 합니다.

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

압축을 해제하고 swift를 관리할 적당한 곳으로 이동합니다.

$ sudo tar -xvzf swift-3.1.1-RELEASE-ubuntu16.04.tar.gz
$ sudo mkdir /swift
$ sudo mv ./swift-3.1.1-RELEASE-ubuntu16.04 /swift
$ cd /swift

그다음 path에 추가해 줍니다.

추가할 path는 압축을 푼 swift폴더의 usr/bin 까지이다. 나는 /swift/swift-3.1.1-RELEASE-ubuntu16.04/usr/bin으로 되어 있습니다.

PATH를 추가하는 방법(형식)은 export PATH=<추가 하려는 경로>:$PATH 입니다.

$ export PATH=/swift/swift-3.1.1-RELEASE-ubuntu16.04/usr/bin:$PATH

정상적으로 추가되었다면 버전을 확인해 봅시다.

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

추가로 Ubuntu가 reboot하면 다시 path를 잡아줘야 하니 /etc/profile에 추가해 줍니다.

$ sudo vim /etc/profile

마지막 라인에 export PATH=/swift/swift-3.1.1-RELEASE-ubuntu16.04/usr/bin:$PATH를 추가해 주고 저장합니다.

이제 Ubuntu에서 swift 빌드를 위한 툴을 설치해 봅시다.

먼저 apt-get을 업데이트하고 기본적으로 설치해야 할 것과 추가적으로 설치해야 할 것을 확인해가며 설치합니다.

$ sudo apt-get update
$ sudo apt-get install clang libicu-dev libcurl4-openssl-dev libssl-dev git libpython-dev

추가로 설치해야 할 만한 것들은 확인해 봅니다.

$ sudo apt-get install cmake ninja-build uuid-dev icu-devtools libbsd-dev libedit-dev libxml2-dev libsqlite3-dev swig libncurses5-dev pkg-config libpq-dev

swift를 열고 print()를 작성해 봅시다.

$ swift
Welcome to Swift version 3.1.1 (swift-3.1.1-RELEASE). Type :help for assistance.
  1> print("dejavu")
dejavu
  2> :q

만약 error: Couldn't IRGen expression, no additional error 메시지가 나온다면 권한 문제이므로 아래 경로의 권한을 변경합니다.

$ sudo chmod 644 /swift/swift-3.1.1-RELEASE-ubuntu16.04/usr/lib/swift/CoreFoundation/*

이제 swift 파일을 만들어서 실행시켜 봅시다. main.swift라는 파일을 하나 만들고 vim으로 아래와 같이 추가합니다.

$ sudo touch main.swift
$ sudo vim main.swift
  1 import Foundation
  2 import Glibc
  3
  4 func Hello(name: String) {
  5     print("Hello, \(name)!")
  6 }
  7
  8 Hello(name: "tongchun")

main.swift파일을 저장하고 swift로 파일을 호출합니다.

$ swift main.swift
Hello, tongchun!

이번에는 build를 해봅시다.

root 권한으로 변경 후 swift package를 이용해 프로젝트를 만들어 봅니다.

$ sudo su
# mkdir swiftTest001
# cd swiftTest001
# swift package init --type executable
# swift build
# ./.build/debug/swiftTest001

이렇게 실행했을때 Hello, world!가 출력되면 성공.


Comments