leycec/raiagent

Error when compiling cataclysm-dda

jrrom opened this issue ยท 12 comments

jrrom commented

Hello I am new to Gentoo so I am not sure if the problem is with the build or with my computer.

CDDA build log
Emerge info

Regards

jrrom commented

My harfbuzz version is 5.3.1-r1

Welcome to the fold, young Padawan. Since this is an unofficial third-party overlay, the problem is almost certainly with our build. You'll quickly learn that overlays are always to blame. Thankfully, we're all super nice devfellows ...would i lie? and delighted to promptly resolve all breakage for you.

Oh โ€“ and thanks so much for the detailed logfiles. That's always a huge help, too. ๐Ÿ˜„

Resolved by a9559d0... maybe. Please let me know if you're still hitting this issue after updating; if so, we'll loudly complain to upstream on the official C:DDA issue tracker.

Until then, may the mutated zombie horde be with you always. ๐ŸงŸ

jrrom commented

Thank you very much!!! I will keep the mutated zombie horde in my heart

Gah! Sadly, the prior commit failed to resolve this. Let me dig a bit deeper into the festering cesspool that is the C:DDA 0.F codebase and see if I can't scrounge together a working fix that actually works. </sigh>

Possibly fixed yet again? I was more... forceful this time. This newest patch isn't exactly ideal, but then neither is the C:DDA codebase. I pray to all the mutant zombie horde that C:DDA releases a new stable version soon! ๐Ÿ™ ๐ŸงŸ ๐Ÿ™

Please let me know if your pain persists. Until then, hit zombies until they stop reaching for brains.

jrrom commented

Sorry it seems the stable version still doesn't build ๐Ÿ˜ญ
The unstable version works perfectly though.

Here is the log: https://gist.github.com/jrrom/1351a3d639c4ffb693a117632943f2c6

I think you have to re-add fpermissive.

Regards

jrrom commented

How do I know if this is the latest version? I ran emerge --sync raiagent, should that be enough?

emerge --sync raiagent is exactly it. Thus, you are up-to-date and I sigh. ๐Ÿ˜ฎโ€๐Ÿ’จ

Here's the five-second tl;dr. Upstream is broken. None of this is our fault, which is surprising. It's always our fault. In this case, however, C:DDA 0.9F is actually broken. This kinda makes sense. C:DDA 0.9F was released nearly two years ago. It's almost pre-pandemic. Clearly, C:DDA 0.9F compiled at the time just fine. But improvements to G++ (and possibly Clang has well) has ironically rendered C:DDA 0.9F uncompileable today.

Circumventing this is non-trivial, because these are fatal syntactic errors. To ignore them, it turns out that passing -fpermissive isn't enough; neither is stopping passing -Werror. You have to both pass -fpermissive and stop passing -Werror. But that is bad, as it silences other unrelated syntactic errors that we don't want to silence. But upstream is lazy and has failed to release a new stable version in two years... like usual. So, we have no choice.

</puts_the_pencil_down>

jrrom commented

Wow. That's horrible. Thank you so much for your time though, I will play unstable mode. This issue is like a perfect combination of bugs :(
I guess the only fix is to wait until a new stable version comes out.

Hah, hah! It's my birthday, but you are a fellow gentleman of culture and I felt for bad for this continuing to fail. So... I've actually fixed this, finally. ๐Ÿ˜…

Please do continue to use the unstable live version of C:DDA until that inevitably breaks on you. At that point, consider reverting back to C:DDA 0.9F stable. Everything should now compile as expected. Bash those zombies with a homemade nail bat for @leycec.

jrrom commented

Happy Birthday!! ๐ŸŽ‚๐ŸŽ‚๐ŸŽ‚

Sorry for burdening you on your birthday, I hope you're having a great time.

Thank you so much again, and goodbye