| Summary: | games-roguelike/rogue-5.4.4 : mdport.c:264:17: error: dereferencing pointer to incomplete type TERMINAL {aka struct term} | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Toralf Förster <toralf> |
| Component: | Current packages | Assignee: | Gentoo Games <games> |
| Status: | RESOLVED OBSOLETE | ||
| Severity: | normal | CC: | treecleaner, tsmksubc |
| Priority: | Normal | Keywords: | PMASKED |
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Deadline: | 2019-04-21 | ||
| Attachments: |
emerge-info.txt
emerge-history.txt environment etc.portage.tbz2 games-roguelike:rogue-5.4.4:20180306-203146.log logs.tbz2 temp.tbz2 Patch for mdport.c |
||
Created attachment 522596 [details]
emerge-info.txt
Created attachment 522598 [details]
emerge-history.txt
Created attachment 522600 [details]
environment
Created attachment 522602 [details]
etc.portage.tbz2
Created attachment 522604 [details]
games-roguelike:rogue-5.4.4:20180306-203146.log
Created attachment 522606 [details]
logs.tbz2
Created attachment 522608 [details]
temp.tbz2
This problem can be eliminated by adding the following line to mdport.c: #define NCURSES_INTERNALS I will attach a patch. Created attachment 557972 [details, diff]
Patch for mdport.c
In case you are not aware, if you save this file to /etc/portage/patches/games-roguelike/rogue/ it will be picked up and applied automatically.
So upon seeing the 30 days removal notice for rogue stating that it doesn't compile against ncurses 6 (referencing this bug for that complaint), I feel I have to point out that it does:
$ ldd $(which rogue)
linux-vdso.so.1 (0x00007ffc6f5e3000)
libncurses.so.6 => /lib64/libncurses.so.6 (0x00007f394d27a000)
libc.so.6 => /lib64/libc.so.6 (0x00007f394d0ae000)
/lib64/ld-linux-x86-64.so.2 (0x00007f394d777000)
And runs just fine when I boot it up. Specifically I have =sys-libs/ncurses-6.1-r3 , with the "cxx" and "unicode" useflags enabled (and none of the others, except for ABI_X86 stuff), and no patches for rogue anywhere on my system. I also don't have any user patches for ncurses. So the problem is either with something more specific than just it being major version 6 of ncurses (e.g. some useflag I don't have enabled causing problems when it is), or has been fixed by a new version of the ncurses ebuild since the report was filed.
Package removed. |
x86_64-pc-linux-gnu-gcc -O2 -pipe -march=native -DHAVE_CONFIG_H -c mdport.c mdport.c: In function ‘md_hasclreol’: mdport.c:264:17: error: dereferencing pointer to incomplete type ‘TERMINAL {aka struct term}’ if (cur_term->type.Strings == NULL) ^~ make: *** [Makefile:130: mdport.o] Error 1 ------------------------------------------------------------------- This is an unstable amd64 chroot image at a tinderbox (==build bot) name: 17.0-desktop-gnome_test_20180228-181042 ------------------------------------------------------------------- gcc-config -l: [1] x86_64-pc-linux-gnu-7.3.0 * Available Python interpreters, in order of preference: [1] python3.5 [2] python2.7 (fallback) java-config: The following VMs are available for generation-2: emerge -qpv games-roguelike/rogue [ebuild N ] games-roguelike/rogue-5.4.4 !!! The following installed packages are masked: - sci-chemistry/massxpert-3.4.0::gentoo (masked by: package.mask) /usr/portage/profiles/package.mask: # Andreas Sturmlechner <asturm@gentoo.org> (04 Mar 2018) # Dead upstream, depends on deprecated Qt4. # Masked for removal in 30 days. Bug 645436 For more information, see the MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook.