mitsuba-renderer / mitsuba3

Mitsuba 3: A Retargetable Forward and Inverse Renderer
https://www.mitsuba-renderer.org/
Other
2.07k stars 243 forks source link

Does not compile (cstdint) #838

Closed manuel5975p closed 1 year ago

manuel5975p commented 1 year ago

cstdint is not included in several places where it should be. How do you want to update this? For example

ext/drjit/ext/drjit-core/src/common.h
ext/openexr/OpenEXR/IlmImf/ImfHuf.cpp
ext/openexr/OpenEXR/IlmImf/ImfMisc.cpp
ext/rgb2spec/rgb2spec_opt.cpp
merlinND commented 1 year ago

Hello @manuel5975p,

Could you please fill-in the issue template, including your OS and compiler version?

manuel5975p commented 1 year ago

First of all, this is because GCC 13 doesn't use cstdint as widely in other headers anymore, see here: https://gcc.gnu.org/gcc-13/porting_to.html OS: Linux 5.15.122-1-MANJARO gcc version 13.1.1 20230714 CPU: AMD Ryzen 9 3900X 12-Core Processor GPU: NVIDIA GeForce RTX 3070 Python version: Python 3.10.10 LLVM version: 15 CUDA version: 12.2 NVidia driver: 535.86.05 I hope this helpsπŸ™ƒπŸ™ƒπŸ™ƒπŸ™ƒπŸ™ƒπŸ™ƒπŸ™ƒ!

PS: Steps to reproduce:

mkdir build
cd build
cmake .. -GNinja
ninja
njroussel commented 1 year ago

Hi @manuel5975p

Per our recommendations, clang is still strongly recommended. GCC is also technically supported, for various reasons, but we haven't been keeping up with the bleeding edge.

We can look into this in a couple of weeks. Until then, the workaround is pretty easy: just use another compiler or compiler version :smile:

manuel5975p commented 1 year ago

Okay, I will switch to clang then. However it would be advisable to include the required headers explicitly anyway.

Peter0x44 commented 1 year ago

This is related to libstdc++, not gcc Should be reproducible with clang++ -stdlib=libstdc++ Assuming it hasn't been resolved already

njroussel commented 2 months ago

Fixed in master.