我正在尝试在Linux Mint 12上编译Remotepad Server,并且在制作过程中遇到以下错误:


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