Skip to content

[C++][R] package build fails after simdjson introduction due to system simdjson pickup #50581

Description

@thisisnic

The macOS cran-release, ubuntu-r-only-r, and ubuntu-r-only-r (SYSTEM deps) nightly jobs all fail to compile Arrow C++ after the simdjson introduction in #50469. All are caused by the R package build interacting badly with system simdjson.

1. macOS cran-release

The build picks up Homebrew simdjson from /opt/homebrew/include/simdjson.h and compiles it against the old macOS 11.3 SDK used for CRAN binary compatibility. The simdjson header uses std::numeric_limits patterns incompatible with that SDK:

/opt/homebrew/include/simdjson.h:67912: error: class template argument 'T' for template
  'numeric_limits' does not satisfy the constraint ...
20 errors generated.

Failed run: https://github.com/ursacomputing/crossbow/actions/runs/29799266759/job/88536926914

2. ubuntu-r-only-r (AUTO deps)

The build finds the system simdjson shared library and tries to bundle it into a static archive, which fails:

/usr/bin/ar: /usr/lib/x86_64-linux-gnu/libsimdjson.so.9.0.0: file format not recognized

Failed run: https://github.com/ursacomputing/crossbow/actions/runs/29799265099/job/88536922431

3. ubuntu-r-only-r (SYSTEM deps)

The build uses ARROW_DEPENDENCY_SOURCE=SYSTEM. The Docker image installs libsimdjson-dev from Ubuntu 22.04 apt repos, but that version is older than the required >= 3.0.0:

Couldn't find simdjson >= 3.0.0

The per-dependency override simdjson_SOURCE=BUNDLED is ignored because ARROW_DEPENDENCY_SOURCE=SYSTEM takes precedence.

Failed run: https://github.com/ursacomputing/crossbow/actions/runs/29799266838/job/88536927144

Fix

Failures 1 and 2: Add simdjson_SOURCE = "BUNDLED" unconditionally in r/tools/nixlibs.R (around line 590), same pattern already used for Boost and lz4 on macOS.

Failure 3: Either remove libsimdjson-dev from the CI Docker image apt install list (since the available version is too old anyway), or update to a base image with simdjson >= 3.0.0.

Component: R

Activity

  1. changed the title [-][R] macOS CRAN release build fails after simdjson introduction[/-] [+][R] R package build fails after simdjson introduction due to system simdjson pickup[/+] on Jul 21, 2026
  2. kou commented on Jul 21, 2026

    @kou
    Member

    Oh, sorry. @Reranko05 Could you take a look at this?

  3. Reranko05 commented on Jul 22, 2026

    @Reranko05
    Collaborator

    I will investigate the macOS CRAN release and ubuntu-r-only-r (AUTO deps) failures. For the ubuntu-r-only-r (SYSTEM deps) failure, I will wait for the ongoing discussion on the simdjson version requirement, since the available Ubuntu package version is part of that compatibility discussion.

  4. changed the title [-][R] R package build fails after simdjson introduction due to system simdjson pickup[/-] [+][C++][R] package build fails after simdjson introduction due to system simdjson pickup[/+] on Jul 24, 2026
  5. added a commit that references this issue on Jul 24, 2026
  6. added this to the 26.0.0 milestone on Jul 24, 2026
  7. rok commented on Jul 24, 2026

    @rok
    Member

    Issue resolved by pull request 50587
    #50587

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions