LoginSignup
5
4

More than 1 year has passed since last update.

DockerとVS Codeを使ってWindows上にSwift環境を構築する

Posted at

概要

Swiftが大好きでWindowsでもSwiftが書きたい人に向けての記事です。

2022年7月14日にSwift公式サイトのブログで、VS Code のSwift拡張機能について発表がありました。この拡張機能を使ってWindows上でSwift環境を構築するまでの手順を紹介します。

この記事ではWindows上でSwift Package プロジェクト を作成するところまで紹介します。

環境

  • Docker Desktop
  • VS Code

この記事で作成する Swift 環境の Swift バージョンは5.7です。

作業手順

  1. VS Code に Swift 拡張機能をインストールします。

Swift
https://marketplace.visualstudio.com/items?itemName=sswg.swift-lang&ssr=false#overview

  1. VS Code に Remote Development 拡張機能をインストールします。

Remote Development
https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack

  1. Docker Desktop を起動して Docker Engine を起動します。
  2. VS Code のフォルダ内に.devcontainerフォルダを作成し、そのフォルダの中にdevcontainer.jsonファイルを作成します。全体的な構成は VS Code で開いているフォルダ/.devcontainer/devcontainer.json となっています。
- VS Code で開いているフォルダ
    - .deccontainer
        - devcontainer.json
  1. devcontainer.jsonの中身を次のように書き換えます。
devcontainer.json
{
    "name": "Swift-5.7",
    "image": "swift:5.7",
    "extensions": [
      "sswg.swift-lang"
    ],
    "settings": {
      "lldb.library": "/usr/lib/liblldb.so"
    }
}
  1. このようにdevcontainer.jsonの中身を書き換えたら、VS Code のコマンドパレットから Reopen in Containerを選択し実行します。すると、コンテナ環境の立ち上げが始まります。
Reopen in Container
  1. 立ち上げが完了すると Swift を実行できる環境が完成しています。
  2. Swift Package プロジェクトを作成します。ターミナルを開き、swift package init と入力して実行します。
swift package init
  1. 実行が完了すると Swift Package が作成されていると思います。Sorceフォルダの中にコードを書き、Testsフォルダの中でテストを書いていく流れはXcodeでの Swift Package 開発と同じです。
  2. 余談ですが、ctr + shift + B でビルドを実行することができます。

まとめ

この記事ではDockerとVSCodeを使用して、WindowsでSwift開発をできることを紹介した記事です。

Swiftが大好きで、WindowsでもSwiftを書きたいと思ったことをきっかけに始めた作業ですが、日本語の情報が全然見つけきれなくて苦労しました。

この記事が少しでもお役に立てれば幸いです。ご意見やご感想をお待ちしています。

参考資料

Swift Extension for Visual Studio Code
https://www.swift.org/blog/vscode-extension/

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4