業務ではJavaばかり書いているバックエンド開発者で、Swift初心者です。
今はWindowsが愛機なので先日のニュースを見て、手を出したいなと思っていたiPhoneアプリ開発。
Windows × iPhoneアプリ開発の入門記事はXamarinでやっていた時代のものばかりだったので、メモを残しておきます。
用意するもの
- Window10のPC
- Visual Studio 2019
- Swift
Swiftインストール
https://swift.org/download/
swift toolchainをインストールします。
Visual Studio 2019 インストール
https://visualstudio.microsoft.com/
こちらより、(ライセンスを持っていないので)Community版をダウンロードします。
インストールの際は、以下のコンポーネントを入れます。
-
必須
- Windows 10 SDK (10.0.17763.0以上)
- Windows Universal CRT SDK
- MSVC v142 - VS 2019 C++ x64/x86 ビルド ツール (v14.25以上)
-
推奨
- Python 3 64 ビット (3.7.8) …入ってるかつパス通せる人は不要
- Git for Windows
- Windows 用 C++ CMake ツール
- JSON エディター
設定
Windows10だとPythonのパスを通してあげないと、swiftコマンドは何やってもエラーになるので以下をコマンドプロンプトから実行します。
path %ProgramFiles(x86)%\Microsoft Visual Studio\Shared\Python37_64;%PATH%
さらに、REPL(対話型のSwift実行環境)を使うためには、Swift toolchain→Windows SDKのアクセスを許可する必要があります。
set SWIFTFLAGS=-sdk %SDKROOT% -I %SDKROOT%/usr/lib/swift -L SDKROOT%/usr/lib/swift/windows
swift repl -target x86_64-unknown-windows-msvc %SWIFTFLAGS%
動いた!
これで動作確認をしてみます。
$> swift
Welcome to compnerd.org Swift version 5.3.3-dev (LLVM 3093af41dd, Swift 266905108e).
Type :help for assistance.
1> 1 + 2
$R2: Int = 3
Windows10でSwiftが動いたようです。やったね。
さて、Swift package managerを動かしてみるぞ!と思った矢先
swift package init
error: unable to invoke subcommand: C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swift-package ()
2021年2月27日現在、できないようです。非常に残念。
Swift Package Managerのサポートは近日中に、とのこと。待ちます。
できるようになったら記事更新します。
(2022年2月17日追記)
この記事、最新版一年も放置してしまいました。
2021年4月の以下リリースから、Swift Package Managerが対応したようです。
https://www.swift.org/blog/swift-5.4-released/
すばらしい!!!
実はこの記事書いたすぐあとにMac買っちゃったので自分は試しませんが、どなたか試した方はコメントしてくれると、ありがたいです。