13个不稳定版本 (3个重大更改)

0.4.1 2024年8月23日
0.4.0 2024年6月13日
0.3.1 2024年5月31日
0.2.5 2022年1月28日
0.2.2 2017年3月8日

1219数据库接口

Download history • Rust 包仓库 11083/week @ 2024-05-03 • Rust 包仓库 12257/week @ 2024-05-10 • Rust 包仓库 11213/week @ 2024-05-17 • Rust 包仓库 9970/week @ 2024-05-24 • Rust 包仓库 11822/week @ 2024-05-31 • Rust 包仓库 11970/week @ 2024-06-07 • Rust 包仓库 10938/week @ 2024-06-14 • Rust 包仓库 9621/week @ 2024-06-21 • Rust 包仓库 8161/week @ 2024-06-28 • Rust 包仓库 8711/week @ 2024-07-05 • Rust 包仓库 9436/week @ 2024-07-12 • Rust 包仓库 9237/week @ 2024-07-19 • Rust 包仓库 9383/week @ 2024-07-26 • Rust 包仓库 7841/week @ 2024-08-02 • Rust 包仓库 9500/week @ 2024-08-09 • Rust 包仓库 7633/week @ 2024-08-16 • Rust 包仓库

每月下载量36,084
用于 54 个crate(2个直接使用)

MIT/Apache 和可能 GPL-2.0

11MB
240K SLoC

C++ 115K SLoC // 0.2% comments • Rust 包仓库 Rust 102K SLoC // 0.0% comments • Rust 包仓库 C 20K SLoC // 0.2% comments • Rust 包仓库 Puppet 1K SLoC // 0.0% comments • Rust 包仓库 M4 534 SLoC // 0.4% comments • Rust 包仓库 Shell 272 SLoC // 0.2% comments • Rust 包仓库 Bitbake 196 SLoC // 0.0% comments • Rust 包仓库 Automake 130 SLoC // 0.1% comments • Rust 包仓库 AWK 106 SLoC // 0.0% comments • Rust 包仓库 GNU Style Assembly 92 SLoC // 0.2% comments • Rust 包仓库 LLVM 66 SLoC • Rust 包仓库 Visual Studio Project 45 SLoC • Rust 包仓库 Batch 10 SLoC • Rust 包仓库 Visual Studio Solution 6 SLoC • Rust 包仓库 Monkey C 1 SLoC • Rust 包仓库

mysqlclient-sys

libmysql-client的自动生成的Rust绑定(#include <mysql.h>

构建

为了构建此crate,必须在您的系统上安装libmysqlclient(在macOS上,使用brew install mysql,在Ubuntu上,使用apt-get install libmysqlclient-dev,在Windows上,包含在服务器发行版中)。此外,必须存在pkg-configmysql_config,并且能够成功定位libmysqlclient

该crate的构建脚本将尝试使用以下方法查找libmysql-client的库路径

  • 首先,它将尝试使用pkg-config来定位它。所有crate的配置选项,如PKG_CONFIG_ALLOW_CROSSPKG_CONFIG_ALL_STATIC等,都适用于pkg-config
  • 然后,MSVC ABI构建将检查Vcpkg的安装,使用vcpkg cargo build helper。设置环境变量VCPKG_ROOT以指向您的Vcpkg安装,并运行vcpkg install libmysql:x64-windows-static-md来安装所需的库。在这种情况下,您需要设置MYSQLCLIENT_VERSION以指定安装的版本。
  • 除非指定了环境变量MYSQLCLIENT_LIBNAME,否则使用库名mysqlclient
  • 如果上述步骤无法找到库,构建脚本将检查环境变量 MYSQLCLIENT_LIB_DIRMYSQLCLIENT_VERSION
  • 如果使用 pkg-config 无法找到库,它将调用命令 mysql_config --variable=pkglibdir

该包将尝试为各种 libmysqlclient 版本和支持的操作系统使用预生成的绑定。

通过 buildtime_bindgen 功能,您可以在构建时生成与本地安装的 libmysqlclient 版本匹配的绑定。它使用 pkg-configvcpkgmysql_configMYSQLCLIENT_INCLUDE_DIR 变量来确定您的 mysql.h 头文件的位置。可以通过设置 BINDGEN_EXTRA_CLANG_ARGS 变量提供额外的 bindgen 配置。

所有 MYSQLCLIENT_* 环境变量都可以附加一个目标来允许为不同的目标设置不同的值。例如,MYSQLCLIENT_LIB_DIR_x86_64_unknown_linux_gnu 将为 x86_64-unknown-linux-gnu 目标设置 MYSQLCLIENT_LIB_DIR 变量。变量 MYSQLCLIENT_LIB_DIR 在目标特定变体之前具有优先级。

许可证

根据您的选择,许可如下

mysqlclient-src 包根据 GPL-2.0 许可证进行许可,以匹配打包的 mysql 源代码的许可证。

贡献

除非您明确说明,否则根据 Apache-2.0 许可证定义,您有意提交的任何贡献,都应如上所述双重许可,不附加任何额外条款或条件。

依赖关系

~0–5MB
~117K SLoC