3
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

macOS CatalinaでSwiftLintが"zsh: illegal hardware instruction"というエラーで利用できない場合の対処法

macOS CatalinaでSwiftLintを利用しようとした際にエラーが出て、対処しようとしたもののエラーメッセージが分かりにくくて時間がかかってしまったので、メモしておく

環境

  • macOS 10.15.1
    • シェル: zsh (デフォルト)
  • Xcode 11.3

結論

xcode-selectでXcodeアプリに含まれるデベロッパーツールを選択していなかったことが原因であった

詳細

XcodeとSwiftLintをインストールした後でLintコマンドを実行すると、以下のようなエラーが吐かれていた

% swiftlint
Fatal error: Loading sourcekitd.framework/Versions/A/sourcekitd failed: file /private/tmp/swiftlint-20191203-72607-1br7cj0/.build/checkouts/SourceKitten/Source/SourceKittenFramework/library_wrapper.swift, line 39
zsh: illegal hardware instruction  swiftlint

xcode-selectで利用するデベロッパーツールのディレクトリを確認すると、以下のようになっていた

% xcode-select -p
/Library/Developer/CommandLineTools

上記にはSwiftの解析ツール等が含まれていないため、SwiftLintがエラーを吐いて停止していた模様
以下のようにXcode.appの中のデベロッパーツールを選択することで、SwiftLintが正常に実行されるようになった

% sudo xcode-select -s /Applications/Xcode_11.3.app/Contents/Developer

参考

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
Sign upLogin
3
Help us understand the problem. What are the problem?