On 2020-02-24 18:09, tu...@posteo.de wrote: > gcc -L../object -o gopher manager.o gopher.o globals.o ourutils.o cso.o > subprocs.o html2.o CURcurses.o gopherrc.o download.o pager.o form.o upload.o > ../object/libgopher.a -lcurses -lcurses -lm > /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: > CURcurses.o: undefined reference to symbol 'nodelay' > /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: > /lib64/libtinfo.so.6: error adding symbols: DSO missing from command line > collect2: error: ld returned 1 exit status > make[1]: *** [Makefile:152: gopher] Error 1 > > It seems something wrong with my *curses* installation, which is > missing symbols which are identified while linking. > > Is there any chance to compile such programs successfully? > What could be the reason for this?
This is a bug in the upstream build system. They should use `pkg-config --libs ncurses` to construct the link command line, which would result in the correct "-lncurses -ltinfo", but instead they just hardcode "-lncurses". Try passing LDFLAGS=-ltinfo or LDLIBS=-ltinfo to make or configure. -- Ian