우분투(Ubuntu)에 스위프트 설치하기

Ubuntu에 Swift 설치하기

  • 우분투 서버에 스위프트(Swift) 언어 라이브러리 설치
  • 간단한 스위프트 프로그램 작성/실행

안녕하세요 야곰입니다.

애플의 새로운 언어 스위프트는 맥 운영체제 외에도 리눅스(우분투)에서 사용할 수 있습니다.
우분투에서 스위프트를 사용하기 위해 설치하고, 스위프트 프로그램을 간단히 작성해봅니다.

사전 준비지식

본 포스팅을 함께 해보기 위해 필요한 기초 사전지식입니다.

  • vi 사용법
  • 기초 리눅스 명령어(옵션)
  • ssh 사용법(옵션)

사전 준비

우분투(Ubuntu Server 16.04.2 LTS 64bit) 에 스위프트를 설치해 보겠습니다.

우분투 설치방법은 아래글을 참고하세요.

또, 미래에 이 글을 보고계실 여러분께서 현재 스위프트가 어떤 리눅스 버전에서 지원하는지, 스위프트 최신 버전이 몇인지 먼저 체크하시기 바랍니다.

[여기서 체크]

2017년 3월 현재 

  • 지원 리눅스 버전 : Ubuntu 16.04, Ubuntu 14.04 [64bit]
  • 최신 스위프트 버전 : 3.0.2

만약 가상머신을 사용하여 설치한 분께서는 혹시모를 꼬임에 대비하여 작업시작 전 스냅샷을 남겨두시길 권합니다.

저는 mac 터미널에서 우분투 서버로 ssh 접속을 하여 작업을 진행하였습니다.

스위프트 설치

필요 패키지 설치

의존성 관리도구를 통해 필요한 패키지(clang, libicu-dev)를 먼저 설치합니다.
아래 명령어를 통해 설치할 수 있습니다.

$ sudo apt-get install clang libicu-dev

암호를 입력하면 패키지가 설치가 됩니다. 설치 확인 물음에서 Y를 입력해주면 됩니다.

다음으로 스위프트 소스를 다운로드 받습니다.이건 옵션사항인데, 저는 리눅스에서 바로 스위프트 패키지를 다운로드 받고 싶어서 wget을 사용합니다.
혹시 wget이 설치되어 있지 않을 수 있으니 설치해봅니다.

$ sudo apt-get install wget

저는 이미 최신버전이 설치되어있다고 나오네요~

스위프트 패키지 설치

먼저 스위프트 패키지를 다운로드 할 경로로 이동합니다.
(현재 폴더에서 다운로드 받으려면 이동하지 않아도 됩니다)

$ mkdir ~/swift_package
$ cd ~/swift_package

현재 Swift 3.0.2 버전의 소스는 [https://swift.org/builds/swift-3.0.2-release/ubuntu1604/swift-3.0.2-RELEASE/swift-3.0.2-RELEASE-ubuntu16.04.tar.gz] 주소로 배포되어 있는데, 버전에 따라 주소가 달라질 수 있습니다. 애플의 릴리즈 링크를 참고하세요.

아래 명령어를 통해 다운로드 받습니다.
(만약 wget을 설치하지 않았다면 다른 방법을 통해 리눅스로 파일을 전달하면 됩니다)

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

처음으로 Swift를 설치한다면 다운로드 후에 GPG 키를 추가해주어야 합니다.
이미 다운로드 받고 Swift를 사용한 적이 있다면 다음 단계로 넘어가도 됩니다.

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

아까 다운로드한 스위프트 패키지의 압축을 풀어줍니다.
다운로드한 버전에 따라 파일명은 다를 수 있습니다. 자신이 다운로드한 파일을 확인하고 압축을 해제해주세요.

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

압축을 해제하면 폴더가 생성되는데 이 폴더를 /opt 폴더로 이동시킬거예요. 이동시키면서 폴더명도 조금 간단하게 swift-3.0.2로 바꿔줍니다.

$ sudo mv swift-3.0.2-RELEASE-ubuntu16.04 /opt/swift-3.0.2

/opt 폴더로 이동하여 제대로 이동이 되었는지 확인합니다.

$ cd /opt
$ ls

이제 swift 명령어를 사용하기 위해 환경변수에 추가합니다.

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

swift 명령어를 설치된 스위프트 버전을 확인해봅니다.

$ swift --version

그런데 서버를 재시작 하고나면 swift 명령어를 사용할 수 없습니다.
export 환경변수를 다시 등록해줘야 하기 때문인데요, 매우 귀찮으므로 재시작 되어도 문제없도록 환경변수를 등록해둡니다.

$ sudo vi /etc/profile

맨 아랫줄에 

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

를 추가해줍니다.

이제 서버를 재시작해도 문제없이 swift 명령어를 사용할 수 있습니다.

스위프트 작성/실행

이제 스위프트 REPL을 사용하기 위해 swift 명령어를 입력해 봅니다.

앗차 그런데 이게 무슨일입니까? 실행이 되질 않아요!!
파이썬이 없다네요... 망할... 설치해주어야죠?

$ sudo apt-get install libpython-dev

설치가 끝나고 다시 swift 명령어를 입력하면 REPL이 실행됩니다.간단히 코드를 입력하여 동작하는지도 확인해봅니다.

간단한 스위프트 파일을 생성하여 실행도 해봅니다.

$ vi test.swift


$ swift test.swift

이렇게 우분투에 스위프트를 설치하고 간단한 프로그램도 작성해 보았습니다.
이제 스위프트를 설치해 봤으니, 스위프트를 가지고 서버를 만들어 볼까요?
후헿기대됩니다~

곧 스위프트로 API 서버를 만들어 봅시다요!

by yagom

facebook : https://facebook.com/yagomsoft
facebook group : https://www.facebook.com/groups/yagom/

p.s 제 포스팅을 RSS 피드로 받아보실 수 있습니다.
RSS Feed 받기 

This Post Has 6 Comments

  1. $ wget -q -O – https://swift.org/keys/all-keys.asc | gpg –import –
    우분투 18.04에서 해보려고 했는데 여기서 오류가 뜨네요 타당하지 않은 명령어라고..

    1. 안녕하세요 aaa님,

      저도 본문에 써뒀듯이 우분투 16버전에서 진행했고, 시간이 좀 지나서 확실치가 않네요 +_+ 우분투 버전 차이일지는 알아봐야 할 것 같습니다.

  2. 안녕하세요. 야곰쌤. ㅎㅎ
    리눅스에서 swift가 되려나 하고 검색했더니 똭~!!…방가방가입니다. ^^

    덕분에 우분투에 swift 설치 하였습니다. 우분투18,04에서 릴리즈 5.2.4 설치했습니다.
    https://swift.org/builds/swift-5.2.4-release/ubuntu1804/swift-5.2.4-RELEASE/swift-5.2.4-RELEASE-ubuntu18.04.tar.gz

    저는 실행시 에러 (error: ld-2.27.so in swift on Ubuntu 18.04)가 발생해서 아래 명령어로 해결했습니다.
    $ sudo apt remove libc6-dbg
    참조 :https://askubuntu.com/questions/1167043/error-ld-2-27-so-in-swift-on-ubuntu-18-04

    감사합니다. 이제 뭘 할 수 있을까요? ㅎㅎㅎ 건강하세요.

    1. 안녕하세요! 좋은 방법 공유 감사드려요 ㅎㅎ
      우분투에서 스위프트로 서버 프로그램을 만들어 보는건 어떠세요?ㅎ
      Vapor나 Perfect 같은 서버사이드 프레임워크들이 많이 발전중이니 한 번 사용해보셔도 좋을것 같아요 ㅎㅎ

  3. 감사합니다 !!

댓글 남기기

Close