Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 922263 - games-emulation/rpcs3-9999 - error: use of undeclared identifier
Summary: games-emulation/rpcs3-9999 - error: use of undeclared identifier
Status: UNCONFIRMED
Alias: None
Product: GURU
Classification: Unclassified
Component: Package issues (show other bugs)
Hardware: AMD64 Linux
: Normal normal
Assignee: Samuel Bauer
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-01-17 05:13 UTC by Neko-san
Modified: 2024-04-07 20:19 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Compressed Build Log (rpcs3-9999-build.log.gz,28.85 KB, application/gzip)
2024-01-17 05:14 UTC, Neko-san
Details
Environment file (rpcs3-9999-environment.txt,123.12 KB, text/plain)
2024-01-17 05:14 UTC, Neko-san
Details
add-missing-headers.patch (rpcs3-e23db7efb-add-missing-headers.patch,596 bytes, patch)
2024-01-19 03:31 UTC, Takuya Wakazono
Details | Diff
Compressed Build Log (Patched) (rpcs3-9999-build.log.gz,29.64 KB, application/gzip)
2024-01-19 22:09 UTC, Neko-san
Details
add-missing-headers-v2.patch (add-missing-headers-v2.patch,1.16 KB, patch)
2024-01-21 06:12 UTC, Takuya Wakazono
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Neko-san 2024-01-17 05:13:08 UTC
There's two instances of "error: use of undeclared identifier" when building; one in "Utilities/Thread.cpp:3135:17" and another in "Utilities/JITASM.cpp:23:52" that prevent the package from emerging.

Reproducible: Always

Steps to Reproduce:
1. emerge rpcs3
Actual Results:  
Emerge fails.

Expected Results:  
Successful emerge.
Comment 1 Neko-san 2024-01-17 05:14:11 UTC
Created attachment 882447 [details]
Compressed Build Log
Comment 2 Neko-san 2024-01-17 05:14:35 UTC
Created attachment 882448 [details]
Environment file
Comment 3 Takuya Wakazono 2024-01-17 13:35:49 UTC
I thought some headers were missing, but I cannot reproduce this failure.

Not sure if this is related, but your build log has
"/usr/lib/llvm/17/bin/clang++ ... -I/usr/lib/llvm/16/include ..." .
Are you sure your environment is properly updated?
Comment 4 Neko-san 2024-01-17 20:57:25 UTC
I didn't even realize I have both 16 and 17 installed. Invoking "clang --version" reports 16.0.6, so I'm not sure how that didn't change. I'm somewhat new to Gentoo, so is there something I missed?
Comment 5 Takuya Wakazono 2024-01-18 13:56:59 UTC
`env-update` and re-login just to be sure.
Does this "/usr/lib/llvm/17/bin/clang++ ... -I/usr/lib/llvm/16/include ..." thing happen with the other ebuilds too?
If it only happens with this ebuild, use gcc for now.
Comment 6 Neko-san 2024-01-18 21:32:55 UTC
I haven't seen this with any other ebuilds that have failed for any reason recently, so I'm not sure what the exact reasoning is.
I ran `env-update` and rebooted but this still happens with building rpcs3.

If I'm supposed to be updating from LLVM 16 to LLVM 17 though, isn't there something I should do?
Comment 7 Takuya Wakazono 2024-01-19 03:31:55 UTC
Created attachment 882586 [details, diff]
add-missing-headers.patch

Can you check if this patch fixes your problem (put it in /etc/portage/patches/games-emulation/rpcs3/).

As for the LLVM update, not much help I can give you. Ask someone on IRC.
Comment 8 Neko-san 2024-01-19 22:09:44 UTC
Created attachment 882660 [details]
Compressed Build Log (Patched)

No, the build still fails with the patch too; the LLVM 16 include is still there but the errors a bit different
Comment 9 Takuya Wakazono 2024-01-21 06:12:13 UTC
Created attachment 882717 [details, diff]
add-missing-headers-v2.patch

v2 patch, please replace the previous one.
There may be other headers missing but if you are free, give it a try.
Comment 10 Neko-san 2024-01-21 08:19:16 UTC
The LLVM 16 includes are still there but, yeah, this new patch produces a build.
I get a weird crash error after I changed RPCS3's emulated filesystem directory location to one I already have on another drive though:
```
No AppImage path found, checking for executable
Found exec path: /usr/bin/rpcs3
Debugger: 0
/usr/include/c++/v1/string:1320: assertion !empty() failed: string::back(): string is empty
fish: Job 1, 'rpcs3' terminated by signal SIGABRT (Abort)
```
I take it this is some kind of issue with libc++?
Comment 11 Takuya Wakazono 2024-01-21 13:12:44 UTC
I sent the patch upstream and hopefully it will be merged.
https://github.com/RPCS3/rpcs3/pull/15075

> I take it this is some kind of issue with libc++?
All right, I missed the fact you use libc++. So I guess your LLVM 16/17 situation is irrelevant, but libc++ is. Anyway, you should report the runtime error upstream. Probably it needs a proper debugging.