JUCE
JUCE copied to clipboard
[Bug]: JUCE 8.0.2 build failure on Fedora 41 with gcc 14.2.1 on aarch64
Detailed steps on how to reproduce the bug
I am trying to build JUCE 8.0.2 on Fedora 41 / aarch64
What is the expected behaviour?
A build without errors ...
Operating systems
Linux
What versions of the operating systems?
Fedora 41 / gcc 14.2.1
Architectures
ARM
Stacktrace
/builddir/build/BUILD/JUCE-8.0.2-build/JUCE-8.0.2/modules/juce_core/text/juce_CharPointer_UTF8_test.cpp:59:71: error: narrowing conversion of ‘-1’ from ‘int’ to ‘char’ [-Wnarrowing]
59 | const std::vector<CharPointer_UTF8::CharType> string { -1 };
| ^
/builddir/build/BUILD/JUCE-8.0.2-build/JUCE-8.0.2/modules/juce_core/text/juce_CharPointer_UTF8_test.cpp:65:100: error: narrowing conversion of ‘-1’ from ‘int’ to ‘char’ [-Wnarrowing]
65 | const std::vector<CharPointer_UTF8::CharType> string { 0x54, 0x65, 0x73, 0x74, 0x0, -1 };
| ^
/builddir/build/BUILD/JUCE-8.0.2-build/JUCE-8.0.2/modules/juce_core/text/juce_CharPointer_UTF8_test.cpp:71:95: error: narrowing conversion of ‘-1’ from ‘int’ to ‘char’ [-Wnarrowing]
71 | const std::vector<CharPointer_UTF8::CharType> string { 0x54, 0x65, 0x73, 0x74, -1 };
| ^
gmake[2]: *** [extras/UnitTestRunner/CMakeFiles/UnitTestRunner.dir/build.make:181: extras/UnitTestRunner/CMakeFiles/UnitTestRunner.dir/__/__/modules/juce_core/juce_core.cpp.o] Error 1
gmake[2]: Leaving directory '/builddir/build/BUILD/JUCE-8.0.2-build/JUCE-8.0.2/redhat-linux-build'
gmake[1]: *** [CMakeFiles/Makefile2:499: extras/UnitTestRunner/CMakeFiles/UnitTestRunner.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
Plug-in formats (if applicable)
No response
Plug-in host applications (DAWs) (if applicable)
No response
Testing on the develop branch
I have not tested against the develop branch
Code of Conduct
- [X] I agree to follow the Code of Conduct
Your build seems to use make -jX where X > 1. If you build with make -j1 it stops where the error occured. In the spec file you can add: %global _smp_mflags -j1. Assuming you built it in copr, you can also search for "error: " in the builder-log.log.gz file.
Related? https://github.com/juce-framework/JUCE/issues/1314
The error message is a the end of the line in the first message :)
juce_CharPointer_UTF8_test.cpp:65:100: error: narrowing conversion
I don't now if #1314 is related to this one ...
The error message is a the end of the line in the first message :)
juce_CharPointer_UTF8_test.cpp:65:100: error: narrowing conversion
Doh, missed that one as I did not scroll to the end of the line. Sorry for the noise. All I can offer is try to build with -Wno-narrowing and/or -Wno-error=narrowing but since it happens in a *_test.cpp file that is probably not a good idea :-)
I don't now if #1314 is related to this one ...
Me neither. I just mentioned it because of aarch64.
Can you still reproduce this on the latest develop branch? I've just built the UnitTestRunner using g++-14 on Arm64 Ubuntu and I'm not seeing the compilation warning.