Skip to content

Fails to compile eigein3 on gcc13 #28

@irismessage

Description

@irismessage

lots of errors like this:

home/joelm/src/monster-mash/src/../third_party/tinygltf/tiny_gltf.h:895:47: error: ‘uint32_t’ does not name a type
  895 |           GetComponentSizeInBytes(static_cast<uint32_t>(componentType));
      |                                               ^~~~~~~~
/home/joelm/src/monster-mash/src/../third_party/tinygltf/tiny_gltf.h:895:47: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/joelm/src/monster-mash/src/../third_party/tinygltf/tiny_gltf.h:895:71: error: ‘tinygltf::GetComponentSizeInBytes’ cannot be used as a function
  895 |           GetComponentSizeInBytes(static_cast<uint32_t>(componentType));
      |                                                                       ^
/home/joelm/src/monster-mash/src/../third_party/tinygltf/tiny_gltf.h:900:42: error: ‘uint32_t’ was not declared in this scope; did you mean ‘ImageExternal::uint32_t’?
  900 |       if ((bufferViewObject.byteStride % uint32_t(componentSizeInBytes)) != 0) {
      |                                          ^~~~~~~~
      |                                          ImageExternal::uint32_t
/usr/include/bits/stdint-uintn.h:26:20: note: ‘ImageExternal::uint32_t’ declared here
   26 | typedef __uint32_t uint32_t;
      |                    ^~~~~~~~
In file included from /home/joelm/src/monster-mash/src/../third_party/eigen3/Eigen/Core:367,
                 from /home/joelm/src/monster-mash/src/exportgltf.h:21:
/home/joelm/src/monster-mash/src/../third_party/eigen3/Eigen/src/Core/util/Meta.h: At global scope:
/home/joelm/src/monster-mash/src/../third_party/eigen3/Eigen/src/Core/util/Meta.h:547:14: error: ‘uint32_t’ in namespace ‘std’ does not name a type; did you mean ‘int32_t’?
  547 | typedef std::uint32_t uint32_t;
      |              ^~~~~~~~
      |              int32_t
/home/joelm/src/monster-mash/src/../third_party/eigen3/Eigen/src/Core/util/Meta.h:549:14: error: ‘uint64_t’ in namespace ‘std’ does not name a type; did you mean ‘int64_t’?
  549 | typedef std::uint64_t uint64_t;
      |              ^~~~~~~~
      |              int64_t
make[2]: *** [CMakeFiles/monstermash.dir/build.make:205: CMakeFiles/monstermash.dir/exportgltf.cpp.o] Error 1
make[2]: Leaving directory '/home/joelm/src/monster-mash/.build/Release'
make[1]: *** [CMakeFiles/Makefile2:86: CMakeFiles/monstermash.dir/all] Error 2
make[1]: Leaving directory '/home/joelm/src/monster-mash/.build/Release'
make: *** [Makefile:94: all] Error 2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions