Skip to content

[BUG] Build failure with newer GCC: missing <cstdint> includes for uint32_t/uint64_t types #101

@jeevantelukula

Description

@jeevantelukula

Description

The PowerVR Graphics SDK 5.15 fails to compile with newer GCC versions due to missing #include <cstdint> headers in several core framework files. The code uses uint32_t and uint64_t types without explicitly including the required header, which causes compilation failures with newer GCC versions that enforce stricter header inclusion rules and no longer implicitly provide standard integer types through transitive includes. The code relies on implicit inclusion of <cstdint>, which worked with older compilers but fails with latest toolchains.

For example,

  1. framework/PVRCore/strings/StringFunctions.h - Uses uint32_t without including <cstdint>
  2. framework/PVRCore/stream/Stream.h - Uses uint64_t without including <cstdint>
  3. framework/PVRCore/stream/FileStream.h - Uses uint64_t without including <cstdint>

Newer GCC versions enforce stricter header inclusion rules and no longer implicitly provide standard integer types through transitive includes. The code relies on implicit inclusion of <cstdint>, which worked with older compilers but fails with modern toolchains.

Repro steps

  1. Setup Yocto build environment with a recent release whinlatter

  2. Configure for aarch64 target with modern GCC (version 15.2)
    Set MACHINE as any aarch64 machine

  3. Add PowerVR Graphics SDK 5.15 recipe to your layer

  4. Attempt to build
    bitbake powervr-graphics

  5. Observe compilation failure in do_compile task with missing uint32_t/uint64_t errors

Environment

  • SDK version: R25.2-v5.15
  • Operating System/Device: Linux
  • Build System: Yocto/OpenEmbedded
    *Target Architecture: aarch64 (ARM 64-bit)
    *Compiler: GCC (aarch64-oe-linux-g++)
    *Build Configuration: Release mode with -std=gnu++14

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions