#need help getting zsh merged

1 messages · Page 1 of 1 (latest)

last token
#

tldr is that when portage tries to build zsh, it cannot properly detect ncurses. works fine otherwise.
will need some wizards and witches to see what i have managed to do wrong here
☃️

#

i hate gtkcord4

#
checking for ncurses.h... yes
checking for ncursesw/ncurses.h... yes
checking for ncurses/ncurses.h... no
checking for conflicts in sys/time.h and sys/select.h... no
checking TIOCGWINSZ in termios.h... no
checking TIOCGWINSZ in sys/ioctl.h... yes
checking for streams headers including struct winsize... no
checking for printf in -lc... yes
checking for pow in -lm... yes
checking for clock_gettime in -lrt... yes
checking for library containing tigetstr... no
checking if _XOPEN_SOURCE_EXTENDED should not be defined... no
checking for library containing tigetstr... (cached) no
checking for library containing tigetflag... no
checking for library containing tgetent... no
configure: error: in '/var/tmp/portage/app-shells/zsh-5.9-r6/work/zsh-5.9':
configure: error: "No terminal handling library was found on your system.
This is probably a library called 'curses' or 'ncurses'.  You may
need to install a package called 'curses-devel' or 'ncurses-devel' on your
system."
See 'config.log' for more details
last token
#

it finds ncurses.h so thats not the problem is it

#

god i love zsh

teal crater
#

@last token what version

last token
teal crater
#

of zsh

#

also please use paste.gentoo.zip

#

instead of uploading files

last token
#

did you know: i attached them here for a reason

#

you can look at them

#

and get a lot of information

#

scary stuff

teal crater
#

you can use

#

paste.gentoo.zip

#

instead of being a fucking jackass

last token
#

did you know: i dont have curl installed

teal crater
#

-show wgetpaste

last token
#

and i am in bed

#

and i cannot sleep

#

so i have no care for you

teal crater
teal crater
#

I'm not downloading people's files from discord

last token
#

learn to read like wow

teal crater
#

Either pastebin or I'm not fixing

teal crater
last token
#

literal code snippet

teal crater
#

Honestly

#

What is it with people being utter fucking dicks

#

WHEN ASKING FOR SUPPORT

last token
#

ultra violence for a reason

teal crater
#

The main reason I asked you to repaste is because i'm not downloading potetional malware

last token
#

hm

#

mobile didnt set that tag

#

love discord

teal crater
#

And I have a predefined security policy for fetching things from pastebins

teal crater
last token
#

...

teal crater
#

I don't download random files

last token
#

text files..

#

that you read

teal crater
#

Doesn't matter

last token
#

in a text editor

teal crater
#

right... a text editor with full access to my ~/

#

as I can't selinux confine emacs from my own personal files

#

E.g. the bug where emacs evaluated a buffer for certain text files

#

Now what if that has malicious lisp code?

last token
#

pro tip: dont use emacs

teal crater
#

I have a predefined security policy for fetching and securely reading text logs

#

that have been PASTEBINNED

last token
#

yeah well im in bed and i have no care for human beings

#

ill paste them for you when i get up

teal crater
#

and don't be such a fucking dick

#

it's annoying

#

I'm about to spend my evening fetching zsh and whatever

#

I don't need your snarky attitude or you can fix your own fucking zsh

#
user@carbon ~ $ equery files sys-libs/ncurses | grep 'ncurses.h'
/usr/include/ncurses.h
/usr/include/ncursest/ncurses.h
/usr/include/ncursestw/ncurses.h
/usr/include/ncursesw/ncurses.h
#
user@carbon ~ $ e-file ncurses.h
sys-libs/ncurses
        Seen Versions:       6.4_p20240414 6.5-r1 6.5_p20241109 6.5_p20250118 6.5_p20250125
        Portage Versions:    6.4_p20240414 6.5-r1 6.5_p20241109 6.5_p20250118 6.5_p20250125
        Repository:          gentoo
        Installed Versions:  6.5_p20250125(Tue Jan 28 13:30:34 2025) 
        Homepage:            https://www.gnu.org/software/ncurses/ https://invisible-island.net/ncurses/
        Description:         Console display library
        Matched Files:       /usr/include/ncurses.h /usr/include/ncursest/ncurses.h /usr/include/ncursestw/ncurses.h /usr/include/ncursesw/ncurses.h


#

Presume it wants /usr/include/ncurses.h

teal crater
#
AC_CHECK_HEADERS(sys/time.h sys/times.h sys/select.h termcap.h termio.h \
         termios.h sys/param.h sys/filio.h \
         limits.h fcntl.h libc.h sys/utsname.h sys/resource.h \
         sys/sysctl.h sys/random.h \
         locale.h errno.h stdio.h stdarg.h varargs.h stdlib.h \
         unistd.h sys/capability.h \
         utmp.h utmpx.h sys/types.h pwd.h grp.h poll.h sys/mman.h \
         netinet/in_systm.h langinfo.h wchar.h stddef.h \
         sys/stropts.h iconv.h ncurses.h ncursesw/ncurses.h \
         ncurses/ncurses.h)
#

@last token do you have any versions of zsh that are known to work?

#

``

#
conftest.c:243:10: fatal error: ncurses/ncurses.h: No such file or directory
  243 | #include <ncurses/ncurses.h>
      |          ^~~~~~~~~~~~~~~~~~~
compilation terminated.
configure:11363: $? = 1

fails for me too but skips over

#

ahhh.. it can't find tgetent

#

I need to know if you have /usr/include/termcap.h

#

oh

#

wait

#

@last token you need readline

#

(i suspect)

#

are you stripping out readline or something

last token
#

it didnt work when i had readline installed

last token
teal crater
teal crater
#

there is either a packaging bug or a zsh bug

last token
#

i have /usr/include/termcap.h

#

i dont quite have an internet connection on my computer at the moment

#

so i cant give you it

last token
teal crater
teal crater
last token
#

:p

teal crater
#

@last token paste up pkgconf --list-all

#

I see the problem

#
/usr/lib/libtinfot.so.6.5
/usr/lib/libtinfotw.so.6.5
#
configure:6935: x86_64-pc-linux-musl-gcc -o conftest -Os -march=alderlake -mabm -mno-cldemote -mno-kl -mno-sgx -mno-widekl -mshstk --param=l1-cache-line-size=64 --param=l1-cache-size=32 --param=l2-cache-size=20480 -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing  -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -static conftest.c -ltinfow  -lrt -lm  -lc >&5
conftest.c:85:6: error: type of 'tigetstr' does not match original declaration [-Werror=lto-type-mismatch]
#

It's linking against tinfow

#
configure:7177: x86_64-pc-linux-musl-gcc -o conftest -Os -march=alderlake -mabm -mno-cldemote -mno-kl -mno-sgx -mno-widekl -mshstk --param=l1-cache-line-size=64 --param=l1-cache-size=32 --param=l2-cache-size=20480 -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing  -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -static conftest.c -lncursesw  -lrt -lm  -lc >&5
/usr/lib/gcc/x86_64-pc-linux-musl/14/../../../../x86_64-pc-linux-musl/bin/ld: /var/tmp/portage/app-shells/zsh-5.9-r6/temp/cceGJFgK.ltrans0.ltrans.o: in function `main':
<artificial>:(.text.startup+0x2): undefined reference to `tgetent'

#

and cursesw

#

but that doesn't have tgetent?

last token
#

may be a bug then?

teal crater
#

oh it absoloutely is a bug

#

question is what in

#

@last token paste:

nm -D /usr/lib/libtinfow.so | grep " tgetent"
last token
#

the lib in /usr is fake

#

meh

#

linkers

teal crater
#
configure:7177: x86_64-pc-linux-musl-gcc -o conftest -Os -march=alderlake -mabm -mno-cldemote -mno-kl -mno-sgx -mno-widekl -mshstk --param=l1-cache-line-size=64 --param=l1-cache-size=32 --param=l2-cache-size=20480 -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing  -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -static conftest.c -lncursesw  -lrt -lm  -lc >&5

whatever is triggering this test needs to pass tinfo

#

it's a bug in the build system for zsh

last token
#

congratulation

teal crater
#
configure:7177: x86_64-pc-linux-gnu-gcc -o conftest -march=alderlake -mabm -mno-cldemote -mno-kl -mno-sgx -mno-widekl -mshstk --param=l1-cache-line-size=64 --param=l1-cache-size=48 --param=l2-cache-size=36864 -O3 -pipe -flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing   -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs conftest.c -ltinfow -ltinfow -lrt -lm  -lc >&5                               

#

on my machine I see this

#

note the -ltinfow

#

@last token pastebin this please: emerge --info && qlist -Iv and i'll try and fix this tommorow

last token
#

i dont have qlist

teal crater
teal crater
#

aight gonna go out now, will look later, thanks!

last token
#

ill test when i get home

teal crater
#

See I thought that, but I couldn't replicate that

last token
#

lto is the issue here

#

for some reason . .