fasttext を pip で入れるときのエラーと解決策

2024/12/22に公開

pip なり uv なりで RuntimeError: Unsupported compiler -- at least C++17 support is needed! というエラーが出たときの対処法です。

今回は fasttext をインストールするときに生じました。
環境は Linux で、linuxbrew からインストールした gcc を使っているつもりでいます。これが今回ややこしいところです。

解決策

CC=gcc-14 CXX=g++-14 uv add fasttext のように、インストール時に gcc の名前を明示すれば解決します。

少し詳しく

which gcc/usr/bin/gcc でした。(g++ も同様)

本来は linuxbrew でインストールした gcc を使いたいです。
実際に ~/.linuxbrew/bin を見に行くと、 gcc は gcc-14 という名前で入っており、which gcc-14 は linuxbrew のパスを表示しました。

そこでインストール時にこれを明示的に指定することで解決しました。

Discussion