Closed berendbaas closed 8 months ago
Thank you for this issue, very helpful! (Especially the table of which versions succeed)
I actually couldn't immediately reproduce this with clang-15 on my Ubuntu machine, but that is probably some machine-dependent std library version thing or something. I believe then issue is real, I just couldn't easily test a fix :)
This commit addce9c adds #include <cstdint>
everywhere I saw the fixed-width integers being used. Can you confirm if that resolve the issue on your machine?
Longer term, it would be great to add a CI build matrix entry that tests this, although I couldn't immediately figure that out.
Glad to be of help & thanks for the quick turnaround.
This works great. I'm able to build on all aforementioned environments now.
With regards to CI, I don't have much experience, but perhaps inspiration can be drawn from libigl's configuration
I recently ran into issues while building Polyscope on my Fedora 39 machine, using both Clang and GCC.
The issue is caused by unknown
cstdint
types. One of the example errors:The issue seems to be that
uint64_t
is not explicitly included fromcstdint
, and the default inclusion of it was (probably?) an artifact of different compilers.The Porting to GCC 13 page implies this issue under "Header dependency changes". I've not been able to trace it down in the changelog for clang, but seems to fail here at least since Clang 15.
Here's a table of tests I ran compiling the polyscope repo in different environments:
The preferred solution is probably to explicitly include
cstdint
where necessary. A (temporary) workaround for me was to force inclusion of the headers in theCMakeLists.txt
: