Skip to content

rustbook fails to compile on Fedora 42 with all dependencies met #141012

Closed
@Borgerr

Description

@Borgerr
Contributor

Summary

One dependency for building oniguruma related items are anything to do with libclang. This is currently insufficient for Fedora 42 x86 systems. C23, used by default in systems like fedora 42, currently breaks rustbook builds. (see more here) This ends up being problematic as a dependency of rustbook is mdbook-i18n-helpers, which does not compile well with this current setup.

Any previous version of mdbook-i18n-helpers, e.g. 3.6, 3.5, etc, does not compile, however, the latest activity on the head of their main branch does. Anything beyond this is speculative and should be discussed further below.

Command used

./x doc

Also mimicked by compiling strictly rustbook.

Expected behaviour

Documentation generation.

Actual behaviour

Unable to compile onigumura.

Bootstrap configuration (bootstrap.toml)

# See bootstrap.example.toml for documentation of available options
#
profile = "library"  # Includes one of the default files in src/bootstrap/defaults
change-id = 140732

Operating system

Fedora 42

HEAD

414482f

Build Log

My own build log is attached as a file ;)

build.log

Activity

added
T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
C-bugCategory: This is a bug.
on May 14, 2025
added
needs-triageThis issue may need triage. Remove it if it has been sufficiently triaged.
on May 14, 2025
added a commit that references this issue on May 14, 2025

(rust-lang#141012) rustbook compilation succeeds on Fedora 42

Borgerr

Borgerr commented on May 14, 2025

@Borgerr
ContributorAuthor

My branch here doesn't pass tidy checks (so, shouldn't be taken seriously, unless git identifiers suddenly become accepted), but should work as a POC for this fix.

jieyouxu

jieyouxu commented on May 14, 2025

@jieyouxu
Member

AFAICT, this is not actionable for the bootstrap team. Either we'd have to:

cc @ehuss

added
C-external-bugCategory: issue that is caused by bugs in software beyond our control
and removed
C-bugCategory: This is a bug.
needs-triageThis issue may need triage. Remove it if it has been sufficiently triaged.
on May 14, 2025
ehuss

ehuss commented on May 14, 2025

@ehuss
Contributor

Looks like @cuviper has asked for a new release: google/mdbook-i18n-helpers#267 (comment).

cuviper

cuviper commented on May 14, 2025

@cuviper
Member

One dependency for building oniguruma related items are anything to do with libclang.

I don't know what clang has to do with this. The incompatible-pointer-types errors are new in GCC 15, having moved to C23 by default.

https://gcc.gnu.org/gcc-15/porting_to.html#c23-fn-decls-without-parameters

Oniguruma did fix this in 6.9.10, but onig_sys hasn't been updated in a long time (working on it here). But since the main repo is archived, I think it's better to wean ourselves anyway.

In the meantime, if you have oniguruma-devel installed, you can also get onig_sys to use that with env RUSTONIG_SYSTEM_LIBONIG=1.

(edit: I updated to the correct fix commit)

ranger-ross

ranger-ross commented on May 25, 2025

@ranger-ross
Contributor

I ran into this today.

Another work around that does not requiring installing oniguruma-devel is setting:

export CFLAGS='-std=gnu17'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-external-bugCategory: issue that is caused by bugs in software beyond our controlT-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      Participants

      @cuviper@ehuss@ranger-ross@jieyouxu@rustbot

      Issue actions

        rustbook fails to compile on Fedora 42 with all dependencies met · Issue #141012 · rust-lang/rust