⌘+k ctrl+k
1.3 (稳定版)
搜索快捷键 cmd + k | ctrl + k
Windows

在 Windows 上,DuckDB 需要 Microsoft Visual C++ 可再发行软件包作为构建时和运行时依赖项。请注意,与类 UNIX 系统的构建过程不同,Windows 构建直接调用 CMake。

Visual Studio

若要在 Windows 上构建 DuckDB,我们建议使用 Visual Studio 编译器。要使用它,请遵循 CI 工作流中的说明。

python scripts/windows_ci.py
cmake \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_GENERATOR_PLATFORM=x64 \
    -DENABLE_EXTENSION_AUTOLOADING=1 \
    -DENABLE_EXTENSION_AUTOINSTALL=1 \
    -DDUCKDB_EXTENSION_CONFIGS="${GITHUB_WORKSPACE}/.github/config/bundled_extensions.cmake" \
    -DDISABLE_UNITY=1 \
    -DOVERRIDE_GIT_DESCRIBE="$OVERRIDE_GIT_DESCRIBE"
cmake --build . --config Release --parallel

MSYS2 和 MinGW64

DuckDB 也可以在 Windows 上使用 MSYS2MinGW64 构建。请注意,此构建仅出于兼容性原因而受支持,并且仅当在给定平台上 Visual Studio 构建不可行时才应使用。若要使用 MinGW64 构建 DuckDB,请使用 Pacman 安装所需的依赖项。当提示 Enter a selection (default=all) 时,按 Enter 键选择默认选项。

pacman -Syu git mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja
git clone https://github.com/duckdb/duckdb
cd duckdb
cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release -DBUILD_EXTENSIONS="icu;parquet;json"
cmake --build . --config Release

构建成功完成后,您可以在仓库目录中找到 duckdb.exe 二进制文件。

./duckdb.exe

构建 Go 客户端

在 Windows 上构建可能会导致以下错误

go build
collect2.exe: error: ld returned 5 exit status

GitHub 用户 vdmitriyev 分享了在 Windows 上构建 DuckDB Go 客户端的说明

  1. libduckdb-windows-amd64.zip 压缩包中获取四个文件 (.dll, .lib, .hpp, .h)。

  2. 将它们放置到,例如:C:\DuckDB-Go\libs\

  3. 按照 go-duckdb 项目的说明安装依赖项。

  4. 使用以下说明构建您的项目

    set PATH=C:\DuckDB-Go\libs\;%PATH%
    set CGO_CFLAGS=-IC:\DuckDB-Go\libs\
    set CGO_LDFLAGS=-LC:\DuckDB-Go\libs\ -lduckdb
    go build