Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fails to compile on Arch with GCC 14.1 #1196

Closed
wantija opened this issue May 8, 2024 · 4 comments
Closed

Fails to compile on Arch with GCC 14.1 #1196

wantija opened this issue May 8, 2024 · 4 comments
Labels
bug Something isn't working

Comments

@wantija
Copy link

wantija commented May 8, 2024

Current Behavior

Arch has GCC 14.1 it their repos now, after a fullsystem upgrade, cemu does not compile.

Expected Behavior

Cemu compiles from latest git.

Steps to Reproduce

Compile cemu from source/AUR with makepkg -si

System Info (Optional)

No response

Emulation Settings (Optional)

No response

Logs (Optional)

[ 89%] Building CXX object src/gui/CMakeFiles/CemuGui.dir/debugger/DumpCtrl.cpp.o
[ 89%] Building CXX object src/gui/CMakeFiles/CemuGui.dir/debugger/DisasmCtrl.cpp.o
[ 89%] Building CXX object src/gui/CMakeFiles/CemuGui.dir/debugger/DumpWindow.cpp.o
In file included from /home/anon/data/git/cemu-git/src/cemu/src/gui/../gui/ChecksumTool.h:5,
                 from /home/anon/data/git/cemu-git/src/cemu/src/gui/ChecksumTool.cpp:1:
/usr/include/rapidjson/document.h: In member function ‘rapidjson::GenericStringRef<CharType>& rapidjson::GenericStringRef<CharType>::operator=(const rapidjson::GenericStringRef<CharType>&)’:
/usr/include/rapidjson/document.h:319:82: error: assignment of read-only member ‘rapidjson::GenericStringRef<CharType>::length’
  319 |     GenericStringRef& operator=(const GenericStringRef& rhs) { s = rhs.s; length = rhs.length; }
      |                                                                           ~~~~~~~^~~~~~~~~~~~
In file included from /home/anon/data/git/cemu-git/src/cemu/src/gui/../gui/ChecksumTool.h:5,
                 from /home/anon/data/git/cemu-git/src/cemu/src/gui/components/wxDownloadManagerList.cpp:21:
/usr/include/rapidjson/document.h: In member function ‘rapidjson::GenericStringRef<CharType>& rapidjson::GenericStringRef<CharType>::operator=(const rapidjson::GenericStringRef<CharType>&)’:
/usr/include/rapidjson/document.h:319:82: error: assignment of read-only member ‘rapidjson::GenericStringRef<CharType>::length’
  319 |     GenericStringRef& operator=(const GenericStringRef& rhs) { s = rhs.s; length = rhs.length; }
      |                                                                           ~~~~~~~^~~~~~~~~~~~
In file included from /home/anon/data/git/cemu-git/src/cemu/src/gui/../gui/ChecksumTool.h:5,
                 from /home/anon/data/git/cemu-git/src/cemu/src/gui/components/wxTitleManagerList.cpp:25:
/usr/include/rapidjson/document.h: In member function ‘rapidjson::GenericStringRef<CharType>& rapidjson::GenericStringRef<CharType>::operator=(const rapidjson::GenericStringRef<CharType>&)’:
/usr/include/rapidjson/document.h:319:82: error: assignment of read-only member ‘rapidjson::GenericStringRef<CharType>::length’
  319 |     GenericStringRef& operator=(const GenericStringRef& rhs) { s = rhs.s; length = rhs.length; }
      |                                                                           ~~~~~~~^~~~~~~~~~~~
[ 89%] Building CXX object src/gui/CMakeFiles/CemuGui.dir/debugger/ModuleWindow.cpp.o
[ 89%] Building CXX object src/gui/CMakeFiles/CemuGui.dir/debugger/RegisterCtrl.cpp.o
[ 90%] Building CXX object src/gui/CMakeFiles/CemuGui.dir/debugger/RegisterWindow.cpp.o
make[2]: *** [src/gui/CMakeFiles/CemuGui.dir/build.make:157: src/gui/CMakeFiles/CemuGui.dir/ChecksumTool.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [src/gui/CMakeFiles/CemuGui.dir/build.make:189: src/gui/CMakeFiles/CemuGui.dir/components/wxDownloadManagerList.cpp.o] Error 1
make[2]: *** [src/gui/CMakeFiles/CemuGui.dir/build.make:253: src/gui/CMakeFiles/CemuGui.dir/components/wxTitleManagerList.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:463: src/gui/CMakeFiles/CemuGui.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...

@wantija wantija added the bug Something isn't working label May 8, 2024
@GaryOderNichts
Copy link
Contributor

This is a bug in rapidjson which was patched in the Arch package. Make sure to update your packages and try building Cemu again.

@wantija
Copy link
Author

wantija commented May 10, 2024

that seems to have fixed it, thanks!

@wantija wantija closed this as completed May 10, 2024
@nuclearpidgeon
Copy link

For reference as this issue was the first thing that came up when I googled for this "assignment of read-only member" issue - it is tracked in the rapidjson project under Tencent/rapidjson#2277 . It seems a fix has been merged as of 2016(!) but there has still not been a new release with the fix in it...

@Ammar-Sadaoui
Copy link

Ammar-Sadaoui commented Oct 4, 2024

For reference as this issue was the first thing that came up when I googled for this "assignment of read-only member" issue - it is tracked in the rapidjson project under Tencent/rapidjson#2277 . It seems a fix has been merged as of 2016(!) but there has still not been a new release with the fix in it...

thanks for showing me this repo

It's funny that Dev refused to release new version. Instead, he suggested forking the project

.maybe we should find an alternative that has the same release version in all distro instead of custom patches

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants