Неопределенная ссылка при компиляции RemotePad

StackOverflow https://stackoverflow.com/questions/8310240

  •  25-10-2019
  •  | 
  •  

Вопрос

Я пытаюсь собрать сервер remotepad на Linux Mint 12 и получаю следующую ошибку во время Make:


gcc -lXtst -lX11 -lm  -o remotepad remotepad.o ucs2keysym.o
remotepad.o: In function `handleKeyEvent':
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:369: undefined reference to `XKeysymToKeycode'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:371: undefined reference to `XTestFakeKeyEvent'
remotepad.o: In function `simulateKeyWithUnichar':
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:379: undefined reference to `XKeysymToKeycode'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:399: undefined reference to `XTestFakeKeyEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:404: undefined reference to `XTestFakeKeyEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:403: undefined reference to `XTestFakeKeyEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:401: undefined reference to `XTestFakeKeyEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:389: undefined reference to `XKeysymToKeycode'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:394: undefined reference to `XKeysymToKeycode'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:398: undefined reference to `XTestFakeKeyEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:396: undefined reference to `XTestFakeKeyEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:391: undefined reference to `XKeysymToKeycode'
remotepad.o: In function `handleKeyEvent':
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:365: undefined reference to `XBell'
remotepad.o: In function `main':
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:125: undefined reference to `XOpenDisplay'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:130: undefined reference to `XTestQueryExtension'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:143: undefined reference to `XCreateWindow'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:148: undefined reference to `XDisplayKeycodes'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:150: undefined reference to `XGetKeyboardMapping'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:194: undefined reference to `XGetWindowAttributes'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:317: undefined reference to `XGetWindowAttributes'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:302: undefined reference to `XFlush'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:259: undefined reference to `XTestFakeButtonEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:260: undefined reference to `XTestFakeButtonEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:284: undefined reference to `XTestFakeButtonEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:233: undefined reference to `XTestFakeRelativeMotionEvent'
/home/joe/Downloads/RemotePad Server/X11/remotepad.c:126: undefined reference to `XDisplayName'
collect2: ld returned 1 exit status
make: *** [remotepad] Error 1

Я погуглил, и он говорит, чтобы убедиться, что пакет XSTS установил, что я сделал.


/home/joe $ ls /usr/lib/libXtst*
/usr/lib/libXtst.a  /usr/lib/libXtst.so  /usr/lib/libXtst.so.6  /usr/lib/libXtst.so.6.1.0
Это было полезно?

Решение

Лучше всего использовать: gcc remotepad.o ucs2keysym.o -o remotepad -lXtst -lX11 -lm для аргумента упорядочения. Неопределенные ссылки определенно находятся в библиотеке X11. Возможно, добавить -L/usr/X11/lib - или где бы ни находились библиотеки x.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top