Python問題集を解いてみよう!!

【Python】Streamlit実行時にsymbol not found in flat namespace【エラー】

当ページのリンクには広告が含まれています。

Python で Web アプリケーションを簡単に作成できるフレームワーク「Streamlit」の実行時にエラーに遭遇したので、同じエラーで悩んでる方の参考になれば幸いです。

おすすめのレンタルサーバー
目次

現象

streamlit runコマンドを実行するとエラーになる。

ImportError でエラーメッセージは「symbol not found in flat namespace

ImportError: dlopen(/Users/---途中のパスは省略/lib/python3.10/site-packages/google/protobuf/pyext/_message.cpython-310-darwin.so, 0x0002):  

環境

  • Mac mini (M1, 2020)
  • MacOS Monterey バージョン 12.6
  • Python 3.10.6 (pyenv でインストール)
  • Pipenv で仮想環境を作成
  • Streamlit 1.13.0
Pythonを勉強するならUdemyがおすすめ

Pythonを勉強するなら Udemy がおすすめです。

書籍よりも動画の方が情報量が多く、初心者の方でも理解しやすいですし、疑問に思ったことは講師に質問できるので、私は Python の勉強方として Udemy をオススメしています。

特に、酒井 潤さんの「現役シリコンバレーエンジニアが教えるPython入門」というコースがオススメです。

回避策

Streamlit をインストールすると「protobuf」というパッケージもインストールされていますが、protobuf のバージョンを 3.20.3 から 3.20.1 にバージョンダウンしてあげると、このエラーを回避できます。

pip install protobuf==3.20.1

おわりに

今回は、

Streamlit を実行すると symbol not found in flat namespace というエラーになってしまう時の回避方法

をご紹介しました。

以上です。

スポンサーリンク

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

目次