python - 安装 mariadb 包时找不到 mariadb_config

标签 python pip mariadb setup.py

我尝试在 ubuntu 20.04 上安装 mariadb 软件包,并收到此消息:

Collecting mariadb


Using cached mariadb-1.1.3.tar.gz (80 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [19 lines of output]
      /bin/sh: 1: mariadb_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-t71j4ld7/mariadb_85318304dde74615894ef8d77544330a/setup.py", line 26, in <module>
          cfg = get_config(options)
        File "/tmp/pip-install-t71j4ld7/mariadb_85318304dde74615894ef8d77544330a/mariadb_posix.py", line 63, in get_config
          cc_version = mariadb_config(config_prg, "cc_version")
        File "/tmp/pip-install-t71j4ld7/mariadb_85318304dde74615894ef8d77544330a/mariadb_posix.py", line 28, in mariadb_config
          raise EnvironmentError(
      OSError: mariadb_config not found.
      
      This error typically indicates that MariaDB Connector/C, a dependency which must be preinstalled,
      is not found.
      If MariaDB Connector/C is not installed, see installation instructions
      at: https://github.com/mariadb-corporation/mariadb-connector-c/wiki/install.md.
      If MariaDB Connector/C is installed, either set the environment variable MARIADB_CONFIG or edit
      the configuration file 'site.cfg' to set the 'mariadb_config' option to the file location of the
      mariadb_config utility.
      [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.

我发现了许多关于此主题的主题和答案,例如更新和升级系统、升级我的 pip 版本或安装 libmariadbclient-dev、setuptools 或 libmysqlclient-dev 等软件包。

我也在我的系统上安装了 libmariadb-dev,但这些解决方案都不适合我。

python3 --版本:Python 3.8.10

pip --版本:pip 22.1.2

感谢您的帮助!

最佳答案

仅安装 libmariadb-dev 是不够的,您还需要安装 libmariadb(据我所知,焦 pip 上是 libmariadb3),因为 mariadb-config 二进制文件不是 dev 包的一部分。

sudo apt-get install libmariadb3 libmariadb-dev

另一个选择是安装服务器包,其中也包含 MariaDB Connector/C。

关于python - 安装 mariadb 包时找不到 mariadb_config,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72879852/

相关文章:

python - 如何使 argsort 结果在相等值之间是随机的?

python - 使用pip时异常导入SSLError,InsecurePlatformWarning,python3.4 win32

java - mariadb 的字符串不正确,而 mysql 5.5 的字符串不正确

mysql - 如何根据其他列值保留一列的值?

python - 在 pypi 包中包含用户可编辑的配置文件的最佳方法?

python - django-haystack elasticsearch多个索引错误结果

python - 如何对子图/嵌套图进行拓扑排序?

python - 使用 PyPI + OS 级依赖项打包 Python 应用程序

python - 如何以统一的方式获得 Python 包更新的通知?

mysql - Mariadb 主机在 “localhost” 上工作,但不能在 IP 替代 - 127.0.0.1 上工作