Supabaseインストールエラーを解決!HomebrewでのGCCインストール手順とトラブルシューティング

close up photo of programming of codes

前回記事: https://loochs.org/blog/computer/success-story-installing-docker-on-amazon-linux-x86-and-deploying-chatbot-ui/

目次

  1. Supabaseインストールエラー
  2. GCCのインストール
  3. GCCのバージョン確認とシンボリックリンクの作成
  4. Supabaseの再インストール
  5. まとめ

1. Supabaseインストールエラー

まず、Supabaseをbrew install supabase/tap/supabaseしようとした際に以下のエラーメッセージが表示されました。

 brew install supabase/tap/supabase
==> Auto-updating Homebrew...
Adjust how often this is run with HOMEBREW_AUTO_UPDATE_SECS or disable with
HOMEBREW_NO_AUTO_UPDATE. Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
==> Fetching supabase/tap/supabase
==> Downloading https://github.com/supabase/cli/releases/download/v1.167.4/supabase_linux_amd64.tar.gz
Already downloaded: /home/ec2-user/.cache/Homebrew/downloads/d4d255b93309287a2671536a13eebeecb01ade1a4c940253d4a421211df696e3--supabase_linux_amd64.tar.gz
==> Installing supabase from supabase/tap
Error: The following formula cannot be installed from bottle and must be
built from source.
  supabase
Install Clang or run `brew install gcc`.

2. GCCのインストール

GCCがインストールされていないとのことで以下のコマンドを実行してGCCをインストールします。

brew install gcc

3. GCCのバージョン確認とシンボリックリンクの作成

できたっぽいので次に、GCCのバージョンを確認します。インストール後に以下のコマンドを実行して確認します。

$ gcc --version

command not found

command not foundエラーが発生。

$ which gcc
/home/linuxbrew/.linuxbrew/opt/gcc/bin/gcc

GCCのバイナリがシステムの標準パスに含まれていない可能性があるため確認してみます。

$ ls /home/linuxbrew/.linuxbrew/opt/gcc/bin 
c++-14 g++-14 gcc-ar-14 gcc-ranlib-14 gcov-dump-14 gfortran lto-dump-14 x86_64-pc-linux-gnu-g++-14 x86_64-pc-linux-gnu-gcc-ar-14 x86_64-pc-linux-gnu-gcc-ranlib-14 cpp-14 gcc-14 gcc-nm-14 gcov-14 gcov-tool-14 gfortran-14 x86_64-pc-linux-gnu-c++-14 x86_64-pc-linux-gnu-gcc-14 x86_64-pc-linux-gnu-gcc-nm-14 x86_64-pc-linux-gnu-gfortran-14

この場合にはシンボリックリンクを以下のように作成します。

ln -s /home/linuxbrew/.linuxbrew/opt/gcc/bin/gcc-14 /home/linuxbrew/.linuxbrew/opt/gcc/bin/gcc
ln -s /home/linuxbrew/.linuxbrew/opt/gcc/bin/g++-14 /home/linuxbrew/.linuxbrew/opt/gcc/bin/g++
ln -s /home/linuxbrew/.linuxbrew/opt/gcc/bin/cpp-14 /home/linuxbrew/.linuxbrew/opt/gcc/bin/cpp

改めてgcc versionの確認

$ gcc --version
gcc (Homebrew GCC 14.1.0) 14.1.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

4. Supabaseの再インストール

再度、Supabaseをインストールします。

 brew install supabase/tap/supabase
==> Auto-updating Homebrew...
Adjust how often this is run with HOMEBREW_AUTO_UPDATE_SECS or disable with
HOMEBREW_NO_AUTO_UPDATE. Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
==> Fetching supabase/tap/supabase
==> Downloading https://github.com/supabase/cli/releases/download/v1.167.4/supabase_linux_amd64.tar.gz
Already downloaded: /home/ec2-user/.cache/Homebrew/downloads/d4d255b93309287a2671536a13eebeecb01ade1a4c940253d4a421211df696e3--supabase_linux_amd64.tar.gz
==> Installing supabase from supabase/tap
Error: The following formula cannot be installed from bottle and must be
built from source.
  supabase
Install Clang or run `brew install gcc`.

まじか

5. まとめ

supabaseのインストール時に発生した問題を解消するためgccインストールを試みたが失敗しました。Clangで試してみようかな。