LoginSignup
2
1

More than 1 year has passed since last update.

mysqlclientがインストールできない!!!なんで!!!

Last updated at Posted at 2023-03-28

環境

os : Ubuntu 22.04
python : 3.10

事象

↓コマンドで仮想環境を作成して、その中にmysqlclientをダウンロードしたら、、、

$ python -m venv venv

こんなエラーが出てインストールできない!!!:rage:

(venv)$ pip install mysqlclient

Collecting mysqlclient
  Using cached mysqlclient-2.1.1.tar.gz (88 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [16 lines of output]
      /bin/sh: 1: mysql_config: not found
      /bin/sh: 1: mariadb_config: not found
      /bin/sh: 1: mysql_config: not found
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-lq7x6sfi/mysqlclient_a658ec6c7a7f4cfdbaa28115071bf8c3/setup.py", line 15, in <module>
          metadata, options = get_config()
        File "/tmp/pip-install-lq7x6sfi/mysqlclient_a658ec6c7a7f4cfdbaa28115071bf8c3/setup_posix.py", line 70, in get_config
          libs = mysql_config("libs")
        File "/tmp/pip-install-lq7x6sfi/mysqlclient_a658ec6c7a7f4cfdbaa28115071bf8c3/setup_posix.py", line 31, in mysql_config
          raise OSError("{} not found".format(_mysql_config_path))
      OSError: mysql_config not found
      mysql_config --version
      mariadb_config --version
      mysql_config --libs
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

原因

必要なパッケージをインストールしてないだけだった。。。。:crying_cat_face:

怒ってごめん。。。:crying_cat_face:

sudo apt-get install python3-dev default-libmysqlclient-dev build-essential

必要なパッケージをインストールしたらダウンロードできた:relaxed:

(venv)$ pip install mysqlclient
Collecting mysqlclient
  Using cached mysqlclient-2.1.1.tar.gz (88 kB)
  Preparing metadata (setup.py) ... done
Using legacy 'setup.py install' for mysqlclient, since package 'wheel' is not installed.
Installing collected packages: mysqlclient
  Running setup.py install for mysqlclient ... done
Successfully installed mysqlclient-2.1.1

備忘録的なね:fist:

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1