Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
OrganizationEventAdvent CalendarQiitadon (β)
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What are the problem?

Raspberry Pi で Swift を使えるようにする【Swift 5】

Raspberry Pi に Swift をインストールし、「Hello, world!」を出力するまでをやってみます。


Mac にインストールした Visual Studio Code で Raspberry Pi 3 Model B にSSH 接続。

Mac 側の環境

  • MacBook Pro (Retina, 15-inch, Late 2013)
  • macOS Catalina バージョン 10.15.6(19G73)
  • Visual Studio Code バージョン: 1.47.2
    • コミット: 17299e413d5590b14ab0340ea477cdd86ff13daf
    • 日付: 2020-07-15T18:18:50.054Z
    • Electron: 7.3.2
    • Chrome: 78.0.3904.130
    • Node.js: 12.8.1
    • V8:
    • OS: Darwin x64 19.6.0

Raspberry Pi 側の環境

  • Raspberry Pi 3 Model B
$ cat /etc/issue
Raspbian GNU/Linux 9 \n \l

$ cat /etc/debian_version

$ uname -a
Linux raspberrypi 4.19.66-v7+ #1253 SMP Thu Aug 15 11:49:46 BST 2019 armv7l GNU/Linux

$ cat /proc/version
Linux version 4.19.66-v7+ (dom@buildbot) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611)) #1253 SMP Thu Aug 15 11:49:46 BST 2019

$ bash --version
GNU bash, バージョン 4.4.12(1)-release (arm-unknown-linux-gnueabihf)

Swift-Arm の入手

Swift-Arm を入手します。以下のスクリプトで OS の判別、curl のチェック、gpg のチェック等が行われ、Swift-Arm がインストールされます。

$ curl -s https://packagecloud.io/install/repositories/swift-arm/release/script.deb.sh | sudo bash

Swift のインストール

$ sudo apt-get install swift5


インストールした Swift のバージョンを確認

$ swift --version
Swift version 5.1.5 (swift-5.1.5-RELEASE)
Target: armv6-unknown-linux-gnueabihf

無事に Swift をインストールできました🎉


今回は SwiftPractice というディレクトリを作成します。swift package で初期ファイルたちを作成します。

$ mkdir SwiftPractice
$ cd SwiftPractice
$ swift package init --type executable


生成された main.swift には print("Hello, world!") と書かれています。



$ swift build
[4/4] Linking SwiftPractice
$ swift run
Hello, world!

ビルドに成功し、正しく「Hello, world!」が出力されました🎉🎉🎉


Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Help us understand the problem. What are the problem?