"Unauthorized text character" - how to find the desired library

Sorry for the newbie question, my C is very, very rusty. Trying to build xrunclient from http://www.leftfield.org/~dd/sw.html , on IRIX64 I came across:

ld32: ERROR: 33: Unresolved text character "XOpenDisplay"

I believe this is because he cannot find the library he needs, but he finds the header files without complaints. How can I determine which library has this routine, so I can make sure that it is on the library path?

+3
source share
2 answers

Teach a person to fish:

nm -o /usr/lib/lib*.a 2>/dev/null | 
grep  XOpenDisplay | 
grep -w T

What does it mean is

  • /usr/lib. ( 64- /usr/lib64.) -o , , .

  • , : XOpenDisplay.

  • Grep . lone T , nm(1) . , grep -w [TD] .

:

/usr/lib/libSDL.a:SDL_x11dyn.o:00000380 T XOpenDisplay
/usr/lib/libX11.a:OpenDis.o:00000420 T XOpenDisplay

, -lSDL ( , Google), -lX11 .

: -)

+3

libX11.so - Xlib, , Xlib, "X". "Xt", , Xt.

, 15 , , , . , man- X- (, , , manpages, ).

, grep , grepping /usr/lib , , , , . ( Linux, ?), .so, .

: ah, Irix, Linux; , . , - manpages.

+1

Source: https://habr.com/ru/post/1712139/


All Articles